# _MAP: MAI-006 - Calidad
**Épica:** MAI-006
**Nombre:** Calidad
**Fase:** 1 - Alcance Inicial
**Presupuesto:** $25,000 MXN
**Story Points:** 45 SP
**Estado:** 📝 A crear
**Sprint:** Sprint 11-12 (Semanas 16.5-19)
**Prioridad:** P1
**Última actualización:** 2025-12-06
---
## 📋 Propósito
Implementar sistema completo de gestión de calidad en obra con:
- **Inspecciones de calidad** con checklists configurables
- **Reportes de no conformidad (RNC)** con workflow de resolución
- **Pruebas de laboratorio** (concreto, suelos, materiales)
- **Certificaciones y aprobaciones** (clientes, supervisores externos)
- **Integración con apps móviles** MOB-003 (Supervisor) y MOB-004 (Capataz)
- **Trazabilidad completa** por vivienda/frente de obra
**Justificación:** El control de calidad es crítico para cumplimiento con normativas de construcción, certificación INFONAVIT, y garantía de entrega de viviendas sin defectos. Reduce costos de corrección y rework en postventa.
**Reutilización GAMILIT:** 10% (concepto básico de checklist, adaptado extensivamente)
---
## 📁 Contenido
### Requerimientos Funcionales (5)
| ID | Archivo | Título | Estado |
|----|---------|--------|--------|
| RF-QUA-001 | [RF-QUA-001-inspecciones-calidad.md](./requerimientos/RF-QUA-001-inspecciones-calidad.md) | Sistema de Inspecciones de Calidad | 📝 A crear |
| RF-QUA-002 | [RF-QUA-002-no-conformidades.md](./requerimientos/RF-QUA-002-no-conformidades.md) | Reportes de No Conformidad (RNC) | 📝 A crear |
| RF-QUA-003 | [RF-QUA-003-pruebas-laboratorio.md](./requerimientos/RF-QUA-003-pruebas-laboratorio.md) | Pruebas de Laboratorio | 📝 A crear |
| RF-QUA-004 | [RF-QUA-004-certificaciones.md](./requerimientos/RF-QUA-004-certificaciones.md) | Certificaciones y Aprobaciones | 📝 A crear |
| RF-QUA-005 | [RF-QUA-005-trazabilidad-vivienda.md](./requerimientos/RF-QUA-005-trazabilidad-vivienda.md) | Trazabilidad de Calidad por Vivienda | 📝 A crear |
### Especificaciones Técnicas (5)
| ID | Archivo | Título | RF | Estado |
|----|---------|--------|-------|--------|
| ET-QUA-001 | [ET-QUA-001-modelo-inspecciones.md](./especificaciones/ET-QUA-001-modelo-inspecciones.md) | Modelo de Datos de Inspecciones | RF-QUA-001 | 📝 A crear |
| ET-QUA-002 | [ET-QUA-002-workflow-rnc.md](./especificaciones/ET-QUA-002-workflow-rnc.md) | Workflow de No Conformidades | RF-QUA-002 | 📝 A crear |
| ET-QUA-003 | [ET-QUA-003-integracion-laboratorio.md](./especificaciones/ET-QUA-003-integracion-laboratorio.md) | Integración con Laboratorio | RF-QUA-003 | 📝 A crear |
| ET-QUA-004 | [ET-QUA-004-sistema-certificaciones.md](./especificaciones/ET-QUA-004-sistema-certificaciones.md) | Sistema de Certificaciones | RF-QUA-004 | 📝 A crear |
| ET-QUA-005 | [ET-QUA-005-integracion-apps-moviles.md](./especificaciones/ET-QUA-005-integracion-apps-moviles.md) | Integración MOB-003 y MOB-004 | RF-QUA-001, RF-QUA-002 | 📝 A crear |
### Historias de Usuario (9)
| ID | Archivo | Título | SP | Estado |
|----|---------|--------|----|--------|
| US-QUA-001 | [US-QUA-001-crear-checklist-inspeccion.md](./historias-usuario/US-QUA-001-crear-checklist-inspeccion.md) | Crear Checklist de Inspección | 5 | 📝 A crear |
| US-QUA-002 | [US-QUA-002-realizar-inspeccion-movil.md](./historias-usuario/US-QUA-002-realizar-inspeccion-movil.md) | Realizar Inspección desde App Móvil | 8 | 📝 A crear |
| US-QUA-003 | [US-QUA-003-registrar-no-conformidad.md](./historias-usuario/US-QUA-003-registrar-no-conformidad.md) | Registrar Reporte de No Conformidad | 5 | 📝 A crear |
| US-QUA-004 | [US-QUA-004-workflow-resolucion-rnc.md](./historias-usuario/US-QUA-004-workflow-resolucion-rnc.md) | Workflow de Resolución de RNC | 5 | 📝 A crear |
| US-QUA-005 | [US-QUA-005-solicitar-prueba-laboratorio.md](./historias-usuario/US-QUA-005-solicitar-prueba-laboratorio.md) | Solicitar Prueba de Laboratorio | 3 | 📝 A crear |
| US-QUA-006 | [US-QUA-006-registrar-resultados-laboratorio.md](./historias-usuario/US-QUA-006-registrar-resultados-laboratorio.md) | Registrar Resultados de Laboratorio | 5 | 📝 A crear |
| US-QUA-007 | [US-QUA-007-generar-certificacion.md](./historias-usuario/US-QUA-007-generar-certificacion.md) | Generar Certificación de Calidad | 5 | 📝 A crear |
| US-QUA-008 | [US-QUA-008-dashboard-calidad.md](./historias-usuario/US-QUA-008-dashboard-calidad.md) | Dashboard de Calidad y KPIs | 5 | 📝 A crear |
| US-QUA-009 | [US-QUA-009-historial-calidad-vivienda.md](./historias-usuario/US-QUA-009-historial-calidad-vivienda.md) | Historial de Calidad por Vivienda | 4 | 📝 A crear |
**Total Story Points:** 45 SP
### Implementación
📊 **Inventarios de trazabilidad:**
- [TRACEABILITY.yml](./implementacion/TRACEABILITY.yml) - Matriz completa de trazabilidad
- [DATABASE.yml](./implementacion/DATABASE.yml) - Objetos de base de datos
- [BACKEND.yml](./implementacion/BACKEND.yml) - Módulos backend
- [FRONTEND.yml](./implementacion/FRONTEND.yml) - Componentes frontend
- [MOBILE.yml](./implementacion/MOBILE.yml) - Integración con MOB-003 y MOB-004
### Pruebas
📋 Documentación de testing:
- [TEST-PLAN.md](./pruebas/TEST-PLAN.md) - Plan de pruebas
- [TEST-CASES.md](./pruebas/TEST-CASES.md) - Casos de prueba
- [INTEGRATION-TESTS.md](./pruebas/INTEGRATION-TESTS.md) - Tests de integración con apps móviles
---
## 🔗 Referencias
- **README:** [README.md](./README.md) - Descripción detallada de la épica
- **Fase 1:** [../README.md](../README.md) - Información de la fase completa
- **Apps Móviles:** [../../08-epicas/EPIC-MAI-019-mobile-apps.md](../../08-epicas/EPIC-MAI-019-mobile-apps.md) - MOB-003 y MOB-004
- **Control de Obra:** [../MAI-005-control-obra-avances/README.md](../MAI-005-control-obra-avances/README.md) - Integración con avances
- **Postventa:** [../MAI-009-calidad-postventa/README.md](../MAI-009-calidad-postventa/README.md) - Continuidad en garantías
---
## 📊 Métricas
| Métrica | Valor |
|---------|-------|
| **Presupuesto estimado** | $25,000 MXN |
| **Presupuesto target** | $25,000 MXN ±5% |
| **Story Points estimados** | 45 SP |
| **Duración estimada** | 2.5 semanas (12.5 días) |
| **Reutilización GAMILIT** | 10% |
| **Integraciones móviles** | 2 (MOB-003, MOB-004) |
| **RF a implementar** | 5/5 |
| **ET a implementar** | 5/5 |
| **US a completar** | 9/9 |
---
## 🎯 Módulos Afectados
### Base de Datos
- **Schema:** `quality`
- **Tablas principales:**
* `quality_checklists` - Plantillas de checklist
* `quality_checklist_items` - Items de checklist
* `quality_inspections` - Inspecciones realizadas
* `quality_inspection_results` - Resultados de inspección
* `quality_non_conformities` - Reportes de No Conformidad (RNC)
* `quality_nc_actions` - Acciones correctivas/preventivas
* `quality_lab_tests` - Pruebas de laboratorio
* `quality_lab_results` - Resultados de laboratorio
* `quality_certifications` - Certificaciones emitidas
* `quality_approval_history` - Historial de aprobaciones
- **Funciones:** Cálculo de % cumplimiento, validaciones de inspección
- **ENUMs:**
* `inspection_type` (structural, finishing, electrical, plumbing, general)
* `inspection_status` (pending, in_progress, passed, failed, conditional)
* `nc_severity` (critical, major, minor, observation)
* `nc_status` (open, in_progress, resolved, verified, closed, rejected)
* `lab_test_type` (concrete_compression, soil_compaction, steel_tensile, moisture)
* `certification_type` (infonavit, client, internal, regulatory)
### Backend
- **Módulo:** `quality`
- **Path:** `apps/backend/src/modules/quality/`
- **Services:**
* `ChecklistService` - CRUD de checklists
* `InspectionService` - Registro y gestión de inspecciones
* `NonConformityService` - Gestión de RNC
* `LabTestService` - Solicitud y registro de pruebas
* `CertificationService` - Emisión de certificaciones
* `QualityAnalyticsService` - KPIs y reportes
- **Controllers:** QualityController, InspectionController, LabTestController
- **Middlewares:** QualityAuthGuard, ProjectAccessGuard
### Frontend Web
- **Features:** `quality`, `inspections`, `lab-tests`, `certifications`
- **Path:** `apps/frontend/src/features/quality/`
- **Componentes:**
* ChecklistBuilder - Constructor de checklists
* InspectionForm - Formulario de inspección
* NCReportForm - Reporte de no conformidad
* NCWorkflow - Estado y workflow de RNC
* LabTestRequest - Solicitud de prueba
* LabResultsViewer - Visualizador de resultados
* CertificationGenerator - Generador de certificaciones
* QualityDashboard - Dashboard con KPIs
* QualityHistory - Historial por vivienda
- **Stores:** qualityStore, inspectionStore, ncStore, labTestStore
### App Móvil (React Native)
- **Integración con MOB-003 (Supervisor de Obra):**
* Realizar inspecciones con checklist offline
* Registrar RNC con fotos geoetiquetadas
* Solicitar pruebas de laboratorio desde campo
* Aprobar/rechazar avances con criterios de calidad
- **Integración con MOB-004 (Capataz):**
* Consultar checklists pendientes
* Ver RNC de su cuadrilla
* Marcar resolución de RNC
- **Features compartidas:**
* Scanner QR de elementos/viviendas
* Captura de fotos con marcas de calidad
* Modo offline con sincronización
* Notificaciones de RNC urgentes
---
## 🔄 Flujo de Trabajo de Calidad
### 1. Inspección de Calidad
```mermaid
flowchart TD
A[Ingeniero crea checklist] --> B[Asigna inspección a Supervisor]
B --> C{Supervisor en campo}
C -->|App MOB-003| D[Escanea QR de vivienda/área]
D --> E[Completa checklist item por item]
E --> F[Toma fotos de evidencia]
F --> G{¿Todos items OK?}
G -->|Sí| H[Marca inspección aprobada]
G -->|No| I[Genera RNC automático]
H --> J[Sincroniza a servidor]
I --> J
J --> K[Notifica a Residente/Ingeniero]
```
### 2. Reporte de No Conformidad (RNC)
```mermaid
flowchart TD
A[Detección de NC] --> B[Registro de RNC]
B --> C[Clasificación de severidad]
C --> D{Severidad}
D -->|Crítica| E[Notificación inmediata]
D -->|Mayor/Menor| F[Workflow normal]
E --> G[Asignación a responsable]
F --> G
G --> H[Análisis de causa raíz]
H --> I[Plan de acción correctiva]
I --> J[Ejecución de corrección]
J --> K[Verificación de resolución]
K --> L{¿Aceptada?}
L -->|Sí| M[Cierre de RNC]
L -->|No| N[Re-trabajo]
N --> J
M --> O[Actualización de KPIs]
```
### 3. Pruebas de Laboratorio
```mermaid
flowchart TD
A[Solicitud de prueba] --> B[Toma de muestra en campo]
B --> C{¿Laboratorio interno?}
C -->|Sí| D[Registro en sistema]
C -->|No| E[Envío a laboratorio externo]
D --> F[Ejecución de prueba]
E --> G[Espera de resultados]
F --> H[Captura de resultados]
G --> H
H --> I{¿Cumple especificación?}
I -->|Sí| J[Aprobación de material/proceso]
I -->|No| K[Generación de RNC]
J --> L[Actualización de trazabilidad]
K --> M[Workflow de corrección]
```
---
## 📱 Funcionalidades en Apps Móviles
### MOB-003: App Supervisor de Obra
**Funcionalidades de Calidad:**
1. **Inspecciones Digitales**
- Lista de inspecciones pendientes
- Checklist interactivo con checkbox/radio/texto
- Captura de fotos con anotaciones
- Geolocalización automática
- Modo offline completo
2. **Registro de RNC**
- Formulario rápido de RNC
- Clasificación de severidad con colores
- Asignación de responsable
- Adjuntar fotos/videos
- Estado en tiempo real
3. **Validación de Avances**
- Criterios de calidad antes de aprobar avance
- Checklist de pre-entrega
- Bloqueo de avance si hay RNC críticas
### MOB-004: App Capataz
**Funcionalidades de Calidad:**
1. **Consulta de Estándares**
- Ver checklists de calidad por actividad
- Especificaciones técnicas
- Fotos de referencia (buenas prácticas)
2. **Gestión de RNC de Cuadrilla**
- Ver RNC asignadas a su cuadrilla
- Marcar acciones completadas
- Solicitar re-inspección
- Comunicación con Supervisor
3. **Auto-inspección**
- Checklist simplificado antes de solicitar inspección oficial
- Reducir rechazo por errores obvios
---
## 📋 Tipos de Inspecciones
### Inspecciones Estructurales
| Tipo | Frecuencia | Checklist Típico |
|------|-----------|------------------|
| **Cimentación** | Por vivienda | - Profundidad excavación
- Nivel de desplante
- Resistencia concreto
- Armado de acero |
| **Estructura** | Por nivel | - Verticalidad muros
- Niveles y plomadas
- Resistencia elementos
- Juntas constructivas |
| **Losa** | Por losa | - Espesor
- Armado
- Resistencia concreto
- Nivelación |
### Inspecciones de Acabados
| Tipo | Frecuencia | Checklist Típico |
|------|-----------|------------------|
| **Instalaciones** | Por vivienda | - Instalación eléctrica certificada
- Instalación hidráulica sin fugas
- Gas con dictamen
- Drenaje funcional |
| **Acabados** | Por vivienda | - Aplanados sin fisuras
- Pisos nivelados
- Pintura uniforme
- Cancelería funcional |
| **Pre-entrega** | Por vivienda | - Limpieza general
- Servicios funcionando
- Llaves y protecciones
- Manual de usuario |
### Inspecciones de Cumplimiento
| Tipo | Frecuencia | Responsable |
|------|-----------|-------------|
| **INFONAVIT** | Por proyecto | Verificador externo |
| **Protección Civil** | Por etapa | Autoridad municipal |
| **Desarrollos Urbanos** | Al finalizar | Municipio |
| **Cliente Final** | Pre-escritura | Derechohabiente + Notario |
---
## 🧪 Pruebas de Laboratorio
### Pruebas de Concreto
| Prueba | Norma | Frecuencia | Especificación |
|--------|-------|-----------|----------------|
| **Resistencia a compresión** | NMX-C-083 | 1 cilindro/10m³ | f'c ≥ especificado (150, 200, 250 kg/cm²) |
| **Revenimiento** | NMX-C-156 | Por revoltura | 10±2 cm típico |
| **Temperatura** | NMX-C-435 | Por colado | ≤ 32°C |
### Pruebas de Suelos
| Prueba | Norma | Frecuencia | Especificación |
|--------|-------|-----------|----------------|
| **Compactación Proctor** | ASTM D698 | Por capa | 95% PM mínimo |
| **Capacidad de carga** | ASTM D1194 | Por lote | Según proyecto estructural |
| **Granulometría** | ASTM C136 | Por banco | Según especificación |
### Pruebas de Acero
| Prueba | Norma | Frecuencia | Especificación |
|--------|-------|-----------|----------------|
| **Tensión** | NMX-B-172 | Por lote | fy ≥ 4200 kg/cm² |
| **Doblado** | NMX-B-172 | Por lote | Sin fisuras |
---
## 📈 KPIs de Calidad
### Indicadores Principales
| KPI | Fórmula | Meta | Frecuencia |
|-----|---------|------|------------|
| **% Cumplimiento Inspecciones** | (Inspecciones aprobadas / Total inspecciones) × 100 | ≥ 90% | Semanal |
| **Índice de No Conformidad** | RNC / Viviendas inspeccionadas | ≤ 2.0 | Mensual |
| **Tiempo Resolución RNC** | Promedio días (apertura → cierre) | ≤ 7 días | Mensual |
| **% RNC Críticas** | RNC críticas / Total RNC × 100 | ≤ 10% | Mensual |
| **% Pruebas Aprobadas** | Pruebas aprobadas / Total pruebas × 100 | ≥ 95% | Mensual |
| **Tasa de Re-trabajo** | Viviendas con correcciones / Total viviendas × 100 | ≤ 15% | Mensual |
### Dashboard de Calidad
**Vista Director/Ingeniero:**
```
┌─────────────────────────────────────────────────────────┐
│ DASHBOARD DE CALIDAD - Fraccionamiento Los Pinos │
│ Periodo: Noviembre 2025 │
├─────────────────────────────────────────────────────────┤
│ │
│ 📊 KPIs Principales │
│ ┌──────────────┬──────────────┬──────────────┐ │
│ │ Cumplimiento │ RNC Abiertas │ Tiempo Resol │ │
│ │ 92.5% │ 18 │ 5.2 días │ │
│ │ ✅ Meta │ ⚠️ Alto │ ✅ Meta │ │
│ └──────────────┴──────────────┴──────────────┘ │
│ │
│ 📋 Inspecciones (Última semana) │
│ • Realizadas: 45 / 50 programadas (90%) │
│ • Aprobadas: 38 (84%) │
│ • Rechazadas: 7 (16%) │
│ • Pendientes: 5 │
│ │
│ 🚨 RNC por Severidad │
│ • Críticas: 2 (URGENTE) │
│ • Mayores: 8 │
│ • Menores: 8 │
│ │
│ 🧪 Pruebas de Laboratorio │
│ • Pendientes: 3 │
│ • En proceso: 5 │
│ • Aprobadas: 28 (93%) │
│ • Rechazadas: 2 (7%) │
│ │
│ 📈 Tendencia Mensual │
│ • RNC: ↓ -15% vs mes anterior │
│ • Cumplimiento: ↑ +3% vs mes anterior │
│ │
└─────────────────────────────────────────────────────────┘
```
---
## 🔌 Integraciones
### Con Módulo MAI-005 (Control de Obra)
**Integración:** Bloqueo de avances si hay RNC críticas pendientes
```typescript
// Validación al registrar avance
async validateProgressQuality(conceptId: string, unitId: string) {
const criticalNCs = await this.ncService.findCriticalNCsByUnit(unitId, conceptId);
if (criticalNCs.length > 0) {
throw new QualityBlockException(
`No se puede registrar avance. Existen ${criticalNCs.length} RNC críticas pendientes.`,
criticalNCs
);
}
const requiredInspection = await this.inspectionService.isInspectionRequired(conceptId);
if (requiredInspection && !requiredInspection.passed) {
throw new QualityBlockException(
`Se requiere inspección de calidad aprobada antes de registrar avance.`
);
}
return { valid: true };
}
```
### Con Módulo MAI-009 (Postventa)
**Integración:** Historial de calidad de vivienda pasa a postventa
- Todas las inspecciones realizadas
- RNC generadas y resueltas
- Pruebas de laboratorio
- Certificaciones emitidas
- Checklist de pre-entrega
### Con Apps Móviles (MOB-003, MOB-004)
**APIs Clave:**
```typescript
// Endpoints para app móvil
GET /api/mobile/quality/inspections/pending // Inspecciones pendientes
GET /api/mobile/quality/checklists/:id // Detalle de checklist
POST /api/mobile/quality/inspections/:id/complete // Completar inspección
POST /api/mobile/quality/nc/create // Crear RNC
PATCH /api/mobile/quality/nc/:id/resolve // Marcar resolución
GET /api/mobile/quality/nc/assigned // RNC asignadas (MOB-004)
POST /api/mobile/quality/photos/upload // Upload fotos
```
**Sincronización Offline:**
- Cache de checklists asignados (actualizado diariamente)
- Queue de inspecciones completadas
- Queue de RNC registradas
- Compresión de fotos antes de sincronizar
- Retry automático con backoff exponencial
---
## 🚨 Casos de Uso Críticos
### Caso 1: Inspección de Cimentación con RNC Crítica
**Escenario:**
1. Supervisor en campo para inspección de cimentación de lote 45
2. Detecta que profundidad de desplante es 20cm menor a especificación
3. Genera RNC crítica desde app MOB-003
4. Sistema notifica inmediatamente a Ingeniero y Residente
5. Se bloquea automáticamente siguiente actividad (armado) en ese lote
6. Ingeniero analiza y determina acción: profundizar excavación
7. Capataz ejecuta corrección
8. Supervisor re-inspecciona y aprueba
9. Se desbloquea actividad de armado
**Flujo en Sistema:**
```
MOB-003 → [RNC Crítica] → Backend → [Notificación Push] → Ingeniero
→ [Bloqueo Avance] → MAI-005
Ingeniero → [Plan Acción] → RNC → Capataz (MOB-004)
Capataz → [Marcar Resuelto] → RNC
Supervisor → [Re-inspección] → [Aprobar] → [Desbloqueo] → MAI-005
```
### Caso 2: Prueba de Resistencia de Concreto Rechazada
**Escenario:**
1. Se colaron 20 viviendas con concreto del mismo proveedor
2. Prueba de cilindro a 28 días: 180 kg/cm² (especificación: 200 kg/cm²)
3. Sistema genera RNC automática
4. Se bloquean avances de las 20 viviendas afectadas
5. Se solicita estudio estructural
6. Ingeniero determina: refuerzo adicional en elementos
7. Se ejecuta refuerzo
8. Se solicita nueva prueba de concreto de refuerzo
9. Nueva prueba: 220 kg/cm² - APROBADA
10. Se cierran RNC y se desbloquean avances
### Caso 3: Pre-entrega a INFONAVIT
**Escenario:**
1. 50 viviendas listas para entrega
2. Sistema genera checklist de pre-entrega por vivienda
3. Supervisor realiza inspección final con MOB-003
4. De 50 viviendas:
- 45 aprobadas
- 5 con observaciones menores (detalles de pintura)
5. Se generan 5 RNC menores
6. Capataz ejecuta correcciones en 2 días
7. Supervisor re-inspecciona y aprueba
8. Sistema genera certificación de calidad por vivienda
9. Certificaciones se adjuntan a expediente de escrituración
---
## 🧪 Testing
### Unit Tests (Backend)
```typescript
describe('InspectionService', () => {
it('should create inspection from checklist template')
it('should calculate pass/fail based on critical items')
it('should block progress when critical NC exists')
it('should notify stakeholders on NC creation')
})
describe('NonConformityService', () => {
it('should classify NC by severity automatically')
it('should create workflow states correctly')
it('should calculate resolution time SLA')
it('should prevent closure without verification')
})
describe('LabTestService', () => {
it('should validate test results against specifications')
it('should generate NC when test fails')
it('should link test to affected units')
})
```
### E2E Tests (App Móvil)
```typescript
describe('Quality Inspection E2E', () => {
it('should complete full inspection flow offline')
it('should create NC with photos from field')
it('should sync inspection results when online')
it('should show pending inspections by priority')
})
```
### Integration Tests
```typescript
describe('Quality-Progress Integration', () => {
it('should block progress when critical NC exists')
it('should require inspection before progress')
it('should unlock progress after NC resolution')
})
```
---
## 🚨 Riesgos Específicos
| Riesgo | Probabilidad | Impacto | Mitigación |
|--------|-------------|---------|------------|
| **Usuarios omiten inspecciones** | Alta | Alto | Validación automática, bloqueos de avance |
| **RNC no se resuelven a tiempo** | Media | Alto | SLA automáticos, alertas escalonadas |
| **Pruebas de laboratorio tardadas** | Alta | Medio | Buffer de tiempo, laboratorio interno |
| **Rechazo masivo en inspección final** | Media | Muy Alto | Inspecciones intermedias, auto-inspección |
| **Pérdida de trazabilidad** | Baja | Alto | Blockchain de inspecciones (futuro) |
---
## 📋 Checklist de Implementación
### Backend
- [ ] Modelo de datos de checklists configurables
- [ ] CRUD de inspecciones con validaciones
- [ ] Workflow de estados de RNC
- [ ] Servicio de notificaciones por severidad
- [ ] Integración con MAI-005 (bloqueos de avance)
- [ ] API para apps móviles (MOB-003, MOB-004)
- [ ] Sistema de pruebas de laboratorio
- [ ] Generación de certificaciones PDF
- [ ] Dashboard con KPIs de calidad
### App Móvil (MOB-003, MOB-004)
- [ ] Sincronización de checklists offline
- [ ] Formulario de inspección con checklist interactivo
- [ ] Captura de fotos con anotaciones
- [ ] Registro rápido de RNC
- [ ] Scanner QR de viviendas/elementos
- [ ] Modo offline completo
- [ ] Sincronización de inspecciones y RNC
- [ ] Notificaciones push de RNC urgentes
### Frontend Web
- [ ] Constructor de checklists (drag & drop)
- [ ] Vista de inspecciones con filtros
- [ ] Dashboard de calidad con gráficos
- [ ] Workflow visual de RNC (Kanban)
- [ ] Gestión de pruebas de laboratorio
- [ ] Generador de certificaciones
- [ ] Historial de calidad por vivienda
- [ ] Reportes exportables (PDF/Excel)
### Database
- [ ] Schemas y tablas
- [ ] Funciones de validación y cálculo
- [ ] Triggers de notificación
- [ ] Índices optimizados
- [ ] Views de reportes
### Testing
- [ ] Unit tests >80% coverage
- [ ] E2E tests de flujos completos
- [ ] Integration tests con MAI-005
- [ ] Tests de app móvil (offline, sync)
- [ ] Load tests (1000 inspecciones/día)
### Despliegue
- [ ] Variables de entorno
- [ ] Configuración de notificaciones
- [ ] Integración con storage de fotos
- [ ] Monitoreo de SLA de RNC
- [ ] Documentación de uso
---
## 💡 Lessons Learned (a documentar post-implementación)
1. **Checklists deben ser flexibles:** No todas las obras tienen los mismos criterios
2. **Notificaciones críticas no deben saturar:** Solo lo urgente es urgente
3. **Modo offline es obligatorio:** Campo rara vez tiene buena conexión
4. **Fotos son evidencia legal:** Almacenar con metadatos completos (GPS, timestamp, hash)
---
## 🎯 Siguiente Paso
Crear documentación de requerimientos funcionales (RF-QUA-001 a RF-QUA-005) y especificaciones técnicas (ET-QUA-001 a ET-QUA-005).
**Prioridad de documentación:**
1. RF-QUA-001: Sistema de Inspecciones (core del módulo)
2. RF-QUA-002: Reportes de No Conformidad (crítico para workflow)
3. ET-QUA-005: Integración con apps móviles (alta dependencia)
---
**Generado:** 2025-12-06
**Mantenedores:** @tech-lead @backend-team @mobile-team @quality-team
**Estado:** 📝 A crear
**Prioridad:** P1 - Crítico para certificación y cumplimiento