# MAI-007: Seguridad Industrial

**ID:** MAI-007
**Fase:** 2 - Core Business
**Presupuesto:** $30,000 MXN
**Story Points:** 52 SP
**Sprint:** Sprint 11-13 (Semanas 21-26)
**Prioridad:** P0 (Crítica)
**Estado:** En documentación

---

## Resumen Ejecutivo

El módulo de **Seguridad Industrial** gestiona integralmente la seguridad e higiene en obras de construcción, proporcionando herramientas para:

- Gestión y control de Equipo de Protección Personal (EPP)
- Inspecciones de seguridad con evidencia fotográfica y geolocalización
- Reporte y seguimiento de incidentes y accidentes laborales
- Planificación y seguimiento de capacitaciones de seguridad
- Cumplimiento de normativas mexicanas (NOM-STPS) e internacionales (OSHA)

### Problema que Resuelve

Las obras de construcción enfrentan riesgos constantes de accidentes laborales que generan:
- Pérdida de vidas humanas y lesiones
- Costos médicos y legales elevados
- Multas por incumplimiento normativo
- Suspensión de obras por autoridades
- Deterioro de la imagen corporativa

**Sin este módulo:** Control manual con formatos en papel, pérdida de evidencias, falta de trazabilidad, incumplimiento normativo, riesgos legales.

**Con este módulo:** Digitalización de procesos de seguridad, trazabilidad completa, alertas preventivas, cumplimiento normativo automatizado, reducción de accidentes.

---

## Objetivos

### Objetivos de Negocio

1. **Prevenir accidentes:** Reducir incidentes laborales mediante inspecciones periódicas y controles preventivos
2. **Cumplimiento normativo:** Garantizar cumplimiento de NOM-031-STPS-2011 y normativas aplicables
3. **Protección laboral:** Asegurar que todo trabajador cuente con EPP adecuado y vigente
4. **Capacitación continua:** Mantener personal capacitado en normas y procedimientos de seguridad
5. **Trazabilidad completa:** Documentar todas las actividades de seguridad con evidencia digital

### Objetivos Técnicos

1. **App móvil integrada:** Inspecciones y reportes desde campo con MOB-003 y MOB-004
2. **Modo offline:** Funcionamiento sin conexión con sincronización automática
3. **Geolocalización:** Registro GPS de inspecciones e incidentes
4. **Evidencia fotográfica:** Captura y almacenamiento de evidencias
5. **KPIs en tiempo real:** Dashboard con indicadores de seguridad actualizados

---

## Alcance Funcional

### 1. Gestión de Equipo de Protección Personal (EPP)

**Funcionalidades:**
- Catálogo de tipos de EPP (casco, guantes, botas, arnés, chaleco, etc.)
- Registro de especificaciones técnicas y normativas de cada EPP
- Control de inventario con vida útil y fechas de caducidad
- Asignación de EPP a trabajadores según puesto y actividades
- Generación de actas de entrega con firma digital
- Alertas de renovación por vencimiento o desgaste
- Verificación móvil del uso correcto de EPP en campo

**Entidades de datos:**
- Catálogo de EPP
- Inventario de EPP
- Asignaciones de EPP por trabajador
- Inspecciones de uso de EPP

### 2. Inspecciones de Seguridad

**Funcionalidades:**
- Creación de plantillas de checklist personalizadas por tipo de obra
- Definición de criterios de evaluación y niveles de riesgo
- Programación de inspecciones con frecuencia configurable
- Ejecución de inspecciones desde app móvil (MOB-003, MOB-004)
- Captura de fotografías geolocalizadas de hallazgos
- Clasificación de hallazgos por nivel de riesgo (bajo, medio, alto, crítico)
- Asignación de acciones correctivas con responsables y plazos
- Seguimiento de cierre de hallazgos con evidencia
- Reportes de cumplimiento y tendencias

**Entidades de datos:**
- Plantillas de inspección
- Inspecciones realizadas
- Hallazgos de inspección
- Acciones correctivas

### 3. Reportes de Incidentes y Accidentes

**Funcionalidades:**
- Reporte inmediato de incidentes desde app móvil
- Clasificación por tipo (leve, grave, fatal)
- Registro de ubicación GPS y evidencia fotográfica
- Identificación de personas involucradas y testigos
- Investigación de causas raíz (análisis de Ishikawa)
- Documentación de testimonios y evidencias
- Definición de acciones preventivas y correctivas
- Registro de costos asociados (médicos, laborales, legales)
- Cálculo de días perdidos y tasa de incidentes
- Generación de informes oficiales para autoridades

**Entidades de datos:**
- Reportes de incidentes
- Investigaciones de incidentes
- Testigos y testimonios
- Acciones correctivas
- Costos de incidentes

### 4. Capacitaciones de Seguridad

**Funcionalidades:**
- Catálogo de cursos y capacitaciones de seguridad
- Definición de capacitaciones obligatorias por puesto
- Programación de sesiones con fecha, hora, ubicación e instructor
- Gestión de inscripciones y control de capacidad
- Registro de asistencia con firma o código QR
- Aplicación de evaluaciones de conocimientos
- Generación de constancias de capacitación
- Historial de capacitaciones por trabajador
- Alertas de capacitaciones próximas a vencer
- Matriz de cumplimiento de capacitación
- Reportes de cobertura y estadísticas

**Entidades de datos:**
- Catálogo de capacitaciones
- Sesiones programadas
- Registro de asistencia
- Evaluaciones y calificaciones
- Constancias emitidas

---

## Arquitectura del Módulo

### Schema de Base de Datos: `safety`

**Tablas principales:**

```sql
-- EPP
safety.epp_catalog              -- Catálogo de tipos de EPP
safety.epp_inventory            -- Inventario de EPP disponible
safety.epp_assignments          -- Asignaciones a trabajadores
safety.epp_inspections          -- Verificaciones de uso

-- Inspecciones
safety.inspection_templates     -- Plantillas de checklist
safety.inspections              -- Inspecciones realizadas
safety.inspection_findings      -- Hallazgos de inspecciones
safety.corrective_actions       -- Acciones correctivas

-- Incidentes
safety.incident_reports         -- Reportes de incidentes
safety.incident_investigations  -- Investigaciones
safety.incident_witnesses       -- Testigos
safety.incident_costs           -- Costos asociados

-- Capacitaciones
safety.training_catalog         -- Catálogo de cursos
safety.training_sessions        -- Sesiones programadas
safety.training_attendance      -- Asistencia
safety.training_evaluations     -- Evaluaciones
safety.training_certificates    -- Constancias emitidas
```

**ENUMs:**
- `epp_type`: helmet, gloves, boots, harness, vest, goggles, mask, etc.
- `epp_status`: available, assigned, expired, damaged
- `risk_level`: low, medium, high, critical
- `incident_type`: near_miss, minor, serious, fatal
- `incident_status`: reported, under_investigation, closed
- `action_status`: pending, in_progress, completed, cancelled

### Backend: NestJS

**Modules:**
- `SafetyModule` - Módulo principal
- `EppModule` - Gestión de EPP
- `InspectionModule` - Inspecciones de seguridad
- `IncidentModule` - Incidentes y accidentes
- `TrainingModule` - Capacitaciones

**Services:**
- `EppService` - CRUD y lógica de EPP
- `EppInventoryService` - Control de inventario
- `InspectionService` - Gestión de inspecciones
- `InspectionTemplateService` - Plantillas de checklist
- `IncidentService` - Registro de incidentes
- `IncidentInvestigationService` - Investigaciones
- `TrainingService` - Gestión de capacitaciones
- `SafetyKpiService` - Cálculo de indicadores
- `SafetyReportService` - Generación de reportes

**Controllers:**
- `EppController` - API REST de EPP
- `InspectionController` - API REST de inspecciones
- `IncidentController` - API REST de incidentes
- `TrainingController` - API REST de capacitaciones
- `SafetyReportController` - Endpoints de reportes

### Frontend: React + TypeScript

**Páginas principales:**
- `/safety/dashboard` - Dashboard general de seguridad
- `/safety/epp` - Gestión de EPP
- `/safety/inspections` - Inspecciones de seguridad
- `/safety/incidents` - Incidentes y accidentes
- `/safety/trainings` - Capacitaciones
- `/safety/reports` - Reportes y estadísticas

**Componentes principales:**
- `SafetyDashboard` - Dashboard con KPIs
- `EppCatalogManagement` - Gestión de catálogo
- `EppAssignmentForm` - Asignación de EPP
- `EppInventoryDashboard` - Control de inventario
- `InspectionTemplateBuilder` - Constructor de plantillas
- `InspectionScheduler` - Programador de inspecciones
- `FindingsList` - Lista de hallazgos
- `CorrectiveActionTracker` - Seguimiento de acciones
- `IncidentReportForm` - Formulario de incidentes
- `IncidentInvestigationForm` - Investigación de causas
- `IncidentStatistics` - Estadísticas de incidentes
- `TrainingCatalogManagement` - Gestión de catálogo
- `TrainingSessionPlanner` - Planificador de sesiones
- `AttendanceRegistration` - Registro de asistencia
- `TrainingComplianceDashboard` - Matriz de cumplimiento

---

## Flujos de Trabajo

### Flujo 1: Asignación de EPP a Nuevo Trabajador

```
1. [Coordinador Seguridad] Ingresa nuevo trabajador al sistema
2. [Sistema] Identifica EPP requerido según puesto y actividades
3. [Coordinador] Verifica disponibilidad en inventario
4. [Coordinador] Asigna EPP con fecha de entrega
5. [Sistema] Genera acta de entrega de EPP (PDF)
6. [Trabajador] Firma digitalmente o en papel el acta
7. [Sistema] Registra asignación en expediente del trabajador
8. [Sistema] Programa alertas de renovación según vida útil
```

### Flujo 2: Inspección de Seguridad en Campo

```
1. [Supervisor] Abre app móvil MOB-003
2. [Supervisor] Selecciona proyecto y tipo de inspección
3. [Sistema] Carga checklist correspondiente
4. [Supervisor] Completa checklist item por item
5. [Supervisor] Identifica hallazgo (no conformidad)
6. [Supervisor] Toma fotografía del hallazgo
7. [Sistema] Registra GPS y timestamp automáticamente
8. [Supervisor] Clasifica riesgo (bajo/medio/alto/crítico)
9. [Sistema] Sincroniza datos con servidor
10. [Sistema] Notifica a coordinador si hay hallazgos críticos
11. [Coordinador] Asigna acción correctiva con responsable y plazo
12. [Sistema] Envía notificación al responsable
13. [Responsable] Implementa corrección y registra evidencia
14. [Coordinador] Verifica y cierra hallazgo
```

### Flujo 3: Reporte de Incidente Laboral

```
1. [Supervisor/Capataz] Presencia incidente en obra
2. [Supervisor] Abre app móvil y selecciona "Reportar Incidente"
3. [Sistema] Activa formulario de reporte rápido
4. [Supervisor] Completa datos:
   - Tipo de incidente (leve/grave/fatal)
   - Personas involucradas
   - Descripción de lo ocurrido
   - Fotografías de la escena
5. [Sistema] Captura GPS y timestamp
6. [Sistema] Envía notificación inmediata a:
   - Coordinador de Seguridad
   - Residente de Obra
   - Director General (si es grave o fatal)
7. [Coordinador] Inicia investigación formal
8. [Coordinador] Documenta causas raíz
9. [Coordinador] Define acciones preventivas/correctivas
10. [Sistema] Asigna responsables y plazos
11. [Coordinador] Genera informe oficial
12. [Sistema] Calcula KPIs (tasa de incidentes, días perdidos)
13. [Coordinador] Cierra incidente con verificación de medidas
```

### Flujo 4: Capacitación de Seguridad

```
1. [Coordinador] Programa sesión de capacitación
2. [Sistema] Identifica trabajadores que requieren la capacitación
3. [Sistema] Envía notificación de inscripción
4. [Día de sesión] [Instructor] Registra asistencia (QR o firma)
5. [Instructor] Imparte capacitación
6. [Instructor] Aplica evaluación de conocimientos
7. [Sistema] Registra calificaciones
8. [Sistema] Genera constancias para aprobados
9. [Sistema] Actualiza matriz de cumplimiento
10. [Sistema] Programa alerta de renovación (si aplica)
```

---

## Integraciones

### Integraciones con Módulos Backend

| Módulo | Relación | Datos Compartidos |
|--------|----------|-------------------|
| **MAI-001** Fundamentos | Consume datos de personal | Trabajadores, puestos, proyectos asignados |
| **MAI-002** Proyectos | Vincula inspecciones/incidentes a obras | Proyectos activos, ubicaciones, residentes |
| **MAI-004** Compras/Inventarios | Gestiona inventario de EPP | Stock de EPP, movimientos, proveedores |
| **MAI-007-RRHH** Asistencias | Complementa expediente laboral | Historial de capacitaciones, incidentes |
| **MGN-005** Catálogos | Consume catálogos generales | Tipos de EPP, tipos de capacitación |
| **MGN-007** Auditoría | Registra eventos críticos | Logs de incidentes, cambios de estado |
| **MGN-008** Notificaciones | Envía alertas y recordatorios | Notificaciones push, emails |

### Integraciones con Apps Móviles

#### MOB-003: App Supervisor

**Funcionalidades compartidas:**
- Verificación de uso de EPP en campo
- Ejecución de inspecciones de seguridad con checklist
- Reporte inmediato de incidentes con GPS y fotos
- Consulta de capacitaciones del personal
- Captura de evidencias fotográficas geolocalizadas
- **Modo offline:** Todas las funcionalidades disponibles sin conexión
- **Sincronización:** Automática al recuperar conexión

**Flujo de datos:**
```
App Móvil (MOB-003) <--> API REST (MAI-007) <--> PostgreSQL
                              |
                              v
                         AWS S3 (Fotos)
```

#### MOB-004: App Capataz

**Funcionalidades compartidas:**
- Reporte de incidentes de su cuadrilla
- Inspecciones básicas de seguridad
- Verificación de EPP de trabajadores bajo su cargo
- Consulta de checklist de seguridad
- Registro de asistencia a capacitaciones

**Características:**
- Interfaz simplificada para uso en campo
- Modo offline completo
- Sincronización en segundo plano

---

## Reutilización del Core ERP

**Porcentaje de reutilización:** 0% - Módulo vertical específico

**Justificación:**
- Módulo completamente nuevo especializado en construcción
- No existe equivalente en el core ERP genérico
- Cumple normativas específicas del sector construcción (NOM-STPS, OSHA)
- Integración profunda con apps móviles de campo

**Componentes reutilizados del core:**
- Sistema de autenticación y permisos (MGN-001)
- Catálogos generales (MGN-005)
- Sistema de auditoría (MGN-007)
- Sistema de notificaciones (MGN-008)

---

## Requerimientos Funcionales

| ID | Título | Descripción | Prioridad | SP |
|----|--------|-------------|-----------|----:|
| [RF-SEG-001](./requerimientos/RF-SEG-001-gestion-epp.md) | Gestión de EPP | Control de equipo de protección personal | Crítica | 13 |
| [RF-SEG-002](./requerimientos/RF-SEG-002-inspecciones-seguridad.md) | Inspecciones de Seguridad | Checklist, hallazgos y acciones correctivas | Crítica | 15 |
| [RF-SEG-003](./requerimientos/RF-SEG-003-reportes-incidentes.md) | Reportes de Incidentes | Registro, investigación y seguimiento | Crítica | 13 |
| [RF-SEG-004](./requerimientos/RF-SEG-004-capacitaciones-seguridad.md) | Capacitaciones de Seguridad | Programación, evaluación y seguimiento | Alta | 11 |

**Total Story Points:** 52 SP

---

## Indicadores Clave (KPIs)

### KPI 1: Tasa de Incidentes
- **Descripción:** Número de incidentes por cada 100,000 horas trabajadas
- **Fórmula:** `(Número de incidentes / Total horas trabajadas) × 100,000`
- **Target:** < 2.0
- **Actualización:** Diaria

### KPI 2: Cumplimiento de Inspecciones
- **Descripción:** Porcentaje de inspecciones realizadas vs programadas
- **Fórmula:** `(Inspecciones realizadas / Inspecciones programadas) × 100`
- **Target:** >= 95%
- **Actualización:** Semanal

### KPI 3: Tiempo de Cierre de Hallazgos
- **Descripción:** Días promedio para cerrar hallazgos de inspecciones
- **Fórmula:** `Promedio de días desde hallazgo hasta cierre`
- **Target:** <= 7 días
- **Actualización:** Diaria

### KPI 4: Cobertura de Capacitación
- **Descripción:** Porcentaje de trabajadores capacitados
- **Fórmula:** `(Trabajadores capacitados / Total trabajadores) × 100`
- **Target:** 100%
- **Actualización:** Mensual

### KPI 5: Cumplimiento de EPP
- **Descripción:** Porcentaje de trabajadores con EPP vigente
- **Fórmula:** `(Trabajadores con EPP vigente / Total trabajadores) × 100`
- **Target:** 100%
- **Actualización:** Diaria

---

## Roles y Permisos

| Rol | Permisos |
|-----|----------|
| **Coordinador de Seguridad** | Gestión completa del módulo, crear/modificar EPP, inspecciones, incidentes, aprobar acciones correctivas, generar todos los reportes |
| **Supervisor de Obra** | Realizar inspecciones, reportar incidentes, verificar EPP, consultar reportes de su obra |
| **Capataz** | Reportar incidentes, realizar inspecciones básicas, verificar EPP de su cuadrilla |
| **Residente de Obra** | Consultar inspecciones e incidentes de su proyecto, aprobar acciones correctivas |
| **Director General** | Visualizar todos los reportes y KPIs, recibir alertas de incidentes graves |
| **Trabajador** | Consultar su historial de EPP, consultar sus capacitaciones, reportar sugerencias de seguridad |

---

## Dependencias

### Dependencias Técnicas

**Módulos del Core ERP:**
- **MGN-001** (Usuarios y Autenticación): Sistema de login y permisos
- **MGN-005** (Catálogos): Catálogos de tipos de EPP y capacitaciones
- **MGN-007** (Auditoría): Registro de eventos críticos
- **MGN-008** (Notificaciones): Alertas y recordatorios

**Módulos de Construcción:**
- **MAI-001** (Fundamentos): Datos de trabajadores y proyectos
- **MAI-002** (Proyectos): Vinculación de inspecciones e incidentes a obras
- **MAI-004** (Compras/Inventarios): Control de inventario de EPP
- **MAI-007-RRHH** (Asistencias): Expediente laboral completo

**Apps Móviles:**
- **MOB-003** (App Supervisor): Inspecciones y reportes en campo
- **MOB-004** (App Capataz): Verificación de EPP y reportes básicos

### Dependencias de Infraestructura

- **PostgreSQL 14+**: Base de datos principal
- **Redis**: Caché para sincronización móvil
- **AWS S3 / Azure Blob**: Almacenamiento de fotografías
- **AWS SNS / Firebase**: Notificaciones push a móviles
- **WebSockets**: Sincronización en tiempo real

---

## Diagrama de Arquitectura

```
┌─────────────────────────────────────────────────────────────────┐
│                    MÓDULO MAI-007: SEGURIDAD INDUSTRIAL          │
└─────────────────────────────────────────────────────────────────┘

┌──────────────────────┐         ┌──────────────────────┐
│   APPS MÓVILES       │         │   FRONTEND WEB       │
│                      │         │                      │
│  ┌────────────────┐ │         │  ┌────────────────┐ │
│  │  MOB-003       │ │         │  │  Dashboard     │ │
│  │  Supervisor    │ │         │  │  Seguridad     │ │
│  └────────────────┘ │         │  └────────────────┘ │
│                      │         │                      │
│  ┌────────────────┐ │         │  ┌────────────────┐ │
│  │  MOB-004       │ │         │  │  Gestión EPP   │ │
│  │  Capataz       │ │         │  └────────────────┘ │
│  └────────────────┘ │         │                      │
│                      │         │  ┌────────────────┐ │
│  - Modo Offline    │         │  │  Inspecciones  │ │
│  - GPS & Cámara    │         │  └────────────────┘ │
│  - Sync Queue      │         │                      │
└──────────┬───────────┘         └──────────┬───────────┘
           │                                │
           │         API REST / WebSockets  │
           └────────────────┬───────────────┘
                            │
              ┌─────────────▼──────────────┐
              │   BACKEND - NestJS         │
              │                            │
              │  ┌──────────────────────┐ │
              │  │  SafetyModule        │ │
              │  ├──────────────────────┤ │
              │  │  - EppService        │ │
              │  │  - InspectionService │ │
              │  │  - IncidentService   │ │
              │  │  - TrainingService   │ │
              │  │  - KpiService        │ │
              │  └──────────────────────┘ │
              └─────────────┬──────────────┘
                            │
         ┌──────────────────┼──────────────────┐
         │                  │                  │
    ┌────▼─────┐    ┌──────▼──────┐    ┌─────▼─────┐
    │PostgreSQL│    │   AWS S3    │    │   Redis   │
    │          │    │             │    │           │
    │ Schema:  │    │ - Fotos EPP │    │ - Cache   │
    │  safety  │    │ - Evidencias│    │ - Queue   │
    └──────────┘    │ - Reportes  │    │ - Sync    │
                    └─────────────┘    └───────────┘
         │
         │
    ┌────▼─────────────────────────────┐
    │  INTEGRACIONES                   │
    │                                  │
    │  - MAI-001 (Personal)            │
    │  - MAI-002 (Proyectos)           │
    │  - MAI-004 (Inventarios)         │
    │  - MAI-007-RRHH (Asistencias)    │
    │  - MGN-007 (Auditoría)           │
    │  - MGN-008 (Notificaciones)      │
    └──────────────────────────────────┘
```

---

## Stack Tecnológico

### Backend
```yaml
runtime: Node.js 20 LTS
framework: NestJS 10
language: TypeScript 5.3+
database: PostgreSQL 14+
orm: Prisma 5.x
cache: Redis 7.x
storage: AWS S3 / Azure Blob Storage
notifications: AWS SNS / Firebase Cloud Messaging
websockets: Socket.io
```

### Frontend Web
```yaml
framework: React 18
meta_framework: Next.js 14
language: TypeScript 5.3+
state: Zustand 4.x
ui_library: Material-UI 5.x / shadcn/ui
forms: React Hook Form + Zod
charts: Recharts / Chart.js
maps: Leaflet (para visualización de GPS)
```

### Apps Móviles
```yaml
framework: React Native 0.73+
platform: Expo 50
language: TypeScript 5.3+
state: Zustand 4.x
navigation: React Navigation 6.x
offline_storage: WatermelonDB
sync: Background Fetch + Queue
camera: expo-camera
location: expo-location
biometrics: expo-local-authentication
```

### Infraestructura
```yaml
hosting: AWS / Azure / Google Cloud
containers: Docker + Kubernetes (opcional)
ci_cd: GitHub Actions
monitoring: Sentry (errores), DataDog (métricas)
logs: CloudWatch / Azure Monitor
backups: Automated daily snapshots
```

---

## Normativas y Cumplimiento

### Normativas Mexicanas (NOM-STPS)

| Norma | Descripción | Aplicación |
|-------|-------------|------------|
| **NOM-031-STPS-2011** | Construcción - Condiciones de seguridad y salud | General - Todo el módulo |
| **NOM-017-STPS-2008** | Equipo de protección personal - Selección, uso y manejo | Gestión de EPP |
| **NOM-019-STPS-2011** | Comisiones de seguridad e higiene | Inspecciones de seguridad |
| **NOM-009-STPS-2011** | Trabajos en altura | Inspecciones de andamios y arneses |
| **NOM-030-STPS-2009** | Servicios preventivos de seguridad y salud | Capacitaciones |

### Estándares Internacionales

| Estándar | Descripción | Aplicación |
|----------|-------------|------------|
| **OSHA 1926** | Safety and Health Regulations for Construction | Referencia general |
| **ISO 45001** | Sistemas de gestión de la seguridad y salud en el trabajo | Arquitectura del módulo |

---

## Reportes

### REP-MAI-007-001: Dashboard de Seguridad
- **Frecuencia:** Diario / Tiempo real
- **Secciones:**
  - Indicadores de incidentes (tasa, días perdidos)
  - Estado de inspecciones (programadas vs realizadas)
  - Hallazgos pendientes por nivel de riesgo
  - Cumplimiento de EPP
  - Capacitaciones próximas
  - Gráficos de tendencias

### REP-MAI-007-002: Reporte de Incidentes
- **Frecuencia:** Mensual
- **Secciones:**
  - Resumen de incidentes por tipo y gravedad
  - Análisis de causas raíz
  - Acciones correctivas implementadas
  - Costos asociados (médicos, legales, operativos)
  - Tendencias y recomendaciones

### REP-MAI-007-003: Matriz de Capacitación
- **Frecuencia:** Mensual
- **Secciones:**
  - Capacitaciones vigentes por trabajador
  - Capacitaciones próximas a vencer
  - Capacitaciones pendientes
  - Estadísticas de evaluación
  - Cobertura por proyecto/área

### REP-MAI-007-004: Reporte de Inspecciones
- **Frecuencia:** Semanal
- **Secciones:**
  - Inspecciones realizadas vs programadas
  - Hallazgos por nivel de riesgo
  - Acciones correctivas pendientes
  - Tendencias de cumplimiento
  - Áreas críticas identificadas

---

## Roadmap de Implementación

### Fase 1: Gestión de EPP (4 semanas) - Sprint 11
**Story Points:** 13 SP

**Entregables:**
- Catálogo de tipos de EPP con especificaciones
- Control de inventario de EPP
- Asignación de EPP a trabajadores
- Generación de actas de entrega
- Alertas de renovación
- Integración con app móvil para verificación (MOB-003)

**Hitos:**
- Sistema de EPP operativo
- Primeros trabajadores con EPP asignado
- Verificaciones desde app móvil funcionando

### Fase 2: Inspecciones de Seguridad (5 semanas) - Sprint 12
**Story Points:** 15 SP

**Entregables:**
- Constructor de plantillas de checklist
- Programador de inspecciones
- App móvil para ejecución de inspecciones (MOB-003, MOB-004)
- Captura de fotos y GPS
- Gestión de hallazgos con clasificación de riesgo
- Sistema de acciones correctivas
- Dashboard de inspecciones

**Hitos:**
- Primeras inspecciones realizadas desde móvil
- Sistema de hallazgos y acciones correctivas operativo
- Modo offline funcional

### Fase 3: Reportes de Incidentes (4 semanas) - Sprint 12-13
**Story Points:** 13 SP

**Entregables:**
- Formulario de reporte inmediato en app móvil
- Sistema de investigación de causas
- Análisis de Ishikawa
- Registro de costos y días perdidos
- Seguimiento de acciones preventivas
- Generación de informes oficiales
- Dashboard de estadísticas

**Hitos:**
- Sistema de reporte de incidentes operativo
- Primeras investigaciones documentadas
- KPIs de seguridad calculándose automáticamente

### Fase 4: Capacitaciones (3 semanas) - Sprint 13
**Story Points:** 11 SP

**Entregables:**
- Catálogo de capacitaciones de seguridad
- Programador de sesiones
- Registro de asistencia (firma/QR)
- Sistema de evaluaciones
- Generador de constancias
- Matriz de cumplimiento
- Alertas de renovación

**Hitos:**
- Primera capacitación registrada en el sistema
- Constancias generadas automáticamente
- Matriz de cumplimiento completa

---

## Puntos Críticos

### Riesgos Técnicos

| Riesgo | Probabilidad | Impacto | Mitigación |
|--------|--------------|---------|------------|
| **Sincronización móvil-backend** | Media | Alto | Queue robusta, conflict resolution, tests exhaustivos |
| **Pérdida de datos en modo offline** | Baja | Crítico | WatermelonDB con persistencia local, sync automático |
| **GPS impreciso en interiores** | Alta | Medio | Permitir corrección manual, usar último GPS conocido |
| **Fotos de gran tamaño** | Media | Medio | Compresión automática, límite de tamaño, carga en background |

### Riesgos de Negocio

| Riesgo | Probabilidad | Impacto | Mitigación |
|--------|--------------|---------|------------|
| **Resistencia al cambio** | Alta | Alto | Capacitación intensiva, beneficios claros, gamificación |
| **Incumplimiento normativo** | Baja | Crítico | Validación con expertos, auditorías previas al lanzamiento |
| **Falta de evidencia en inspecciones** | Media | Alto | Hacer obligatorias fotos en hallazgos críticos |
| **Subregistro de incidentes** | Media | Alto | Cultura de seguridad, incentivos por reporte, anonimato opcional |

---

## Métricas de Éxito

### Indicadores Operacionales

| Métrica | Target | Medición |
|---------|--------|----------|
| **Adopción de app móvil** | >90% de supervisores usando MOB-003 | Porcentaje de usuarios activos |
| **Tiempo de reporte de incidente** | <15 minutos desde ocurrencia | Timestamp de incidente vs timestamp de reporte |
| **Cumplimiento de inspecciones** | >=95% | Inspecciones realizadas / Programadas |
| **Tiempo de cierre de hallazgos críticos** | <=48 horas | Promedio de horas desde hallazgo hasta cierre |
| **Cobertura de capacitación** | 100% | Trabajadores capacitados / Total trabajadores |

### Indicadores de Seguridad

| Métrica | Target | Medición |
|---------|--------|----------|
| **Reducción de incidentes** | -30% vs año anterior | Comparación año sobre año |
| **Tasa de incidentes** | <2.0 por 100K horas | (Incidentes / Horas trabajadas) × 100,000 |
| **Días sin incidentes** | >90 días consecutivos | Contador desde último incidente |
| **Cumplimiento normativo** | 100% en auditorías | Porcentaje de conformidad en auditorías STPS |

---

## Próximos Pasos

### Fase de Documentación
1. README.md completado
2. Crear 4 Requerimientos Funcionales (RF-SEG-001 a RF-SEG-004)
3. Crear Especificaciones Técnicas
4. Crear Historias de Usuario (12 US estimadas)
5. Actualizar TRACEABILITY.yml

### Fase de Diseño
1. Diseño de base de datos detallado
2. Diseño de APIs REST
3. Mockups de interfaces web
4. Prototipos de apps móviles
5. Arquitectura de sincronización offline

### Fase de Desarrollo
- **Sprint 11:** Gestión de EPP (4 semanas)
- **Sprint 12:** Inspecciones de Seguridad (5 semanas)
- **Sprint 12-13:** Reportes de Incidentes (4 semanas)
- **Sprint 13:** Capacitaciones (3 semanas)

---

## Referencias

- **Trazabilidad del módulo:** [TRACEABILITY.yml](./implementacion/TRACEABILITY.yml)
- **Apps móviles:** [EPIC-MAI-019-mobile-apps.md](../../08-epicas/EPIC-MAI-019-mobile-apps.md)
- **Normativas NOM-STPS:** [www.stps.gob.mx](https://www.stps.gob.mx)
- **OSHA Construction Standards:** [www.osha.gov/construction](https://www.osha.gov/construction)
- **Fase de módulos:** [../README.md](../README.md)

---

**Generado:** 2025-12-06
**Versión:** 1.0
**Estado:** Completo
**Reutilización del Core ERP:** 0% - Módulo vertical específico de construcción
**Mantenedores:** @safety-team @mobile-team @backend-team
