# US-MMD001-009: Ver Dashboard de Uso del Sistema ## Metadata | Campo | Valor | |-------|-------| | **ID** | US-MMD001-009 | | **Epica** | EPIC-MMD-001 - Fundamentos | | **Modulo** | fundamentos | | **Prioridad** | P2 | | **Story Points** | 3 | | **Sprint** | Sprint 2 | | **Estado** | Backlog | | **Asignado a** | Por asignar | --- ## Historia de Usuario **Como** administrador del taller, **quiero** ver un dashboard con metricas de uso del sistema, **para** entender como se esta utilizando y detectar areas de mejora. ## Descripcion Detallada El dashboard de uso muestra metricas basicas de adopcion y utilizacion del sistema: usuarios activos, ordenes procesadas, modulos mas usados, etc. Esto ayuda al administrador a evaluar el ROI del sistema. --- ## Criterios de Aceptacion **Escenario 1: Ver metricas de usuarios** ```gherkin DADO que accedo al dashboard de uso CUANDO veo la seccion de usuarios ENTONCES veo: | Metrica | Valor | | Usuarios registrados | 8 | | Usuarios activos (hoy) | 5 | | Usuarios activos (semana) | 7 | | Ultimo login | Hace 5 minutos | ``` **Escenario 2: Ver metricas de ordenes** ```gherkin DADO que veo el dashboard CUANDO reviso la seccion de ordenes ENTONCES veo: | Metrica | Valor | | Ordenes hoy | 12 | | Ordenes esta semana | 45 | | Ordenes este mes | 180 | | Promedio diario | 6 | ``` **Escenario 3: Ver actividad por modulo** ```gherkin DADO que veo el dashboard CUANDO reviso uso por modulo ENTONCES veo grafica de barras con: | Modulo | Accesos | | Ordenes | 450 | | Inventario | 230 | | Vehiculos | 180 | | Cotizaciones | 95 | ``` **Escenario 4: Filtrar por periodo** ```gherkin DADO que quiero ver metricas del mes pasado CUANDO selecciono "Ultimo mes" en el filtro ENTONCES las metricas se actualizan con datos del mes anterior ``` --- ## Metricas a Mostrar ### Usuarios | Metrica | Descripcion | |---------|-------------| | Total registrados | Usuarios en el sistema | | Activos hoy | Con al menos 1 accion hoy | | Activos semana | Con al menos 1 accion esta semana | | Tasa de adopcion | Activos / Registrados | ### Operaciones | Metrica | Descripcion | |---------|-------------| | Ordenes creadas | Total en periodo | | Ordenes completadas | Cerradas exitosamente | | Cotizaciones generadas | Total cotizaciones | | Diagnosticos registrados | Total diagnosticos | ### Sistema | Metrica | Descripcion | |---------|-------------| | Uptime | Disponibilidad del sistema | | Errores | Errores registrados | | Tiempo respuesta | Promedio de respuesta API | --- ## Tareas Tecnicas **Backend:** - [ ] BE-032: Crear tabla `activity_log` para tracking - [ ] BE-033: Middleware para registrar actividad - [ ] BE-034: Endpoint GET /api/analytics/usage - [ ] BE-035: Queries agregadas para metricas **Frontend:** - [ ] FE-029: Crear UsageDashboardPage - [ ] FE-030: Crear MetricCard component - [ ] FE-031: Integrar grafica de barras (recharts) - [ ] FE-032: Selector de periodo --- ## Dependencias **Depende de:** - [ ] US-MMD001-001: Configurar taller - [ ] US-MMD001-002: Configurar roles **Bloquea:** - [ ] Ninguno (funcionalidad de monitoreo) --- ## Notas Tecnicas **Endpoints:** | Metodo | Endpoint | Descripcion | |--------|----------|-------------| | GET | /api/analytics/usage | Metricas generales | | GET | /api/analytics/usage/users | Metricas de usuarios | | GET | /api/analytics/usage/modules | Uso por modulo | **Estructura activity_log:** ```typescript interface ActivityLog { id: string; user_id: string; workshop_id: string; module: string; action: string; entity_type?: string; entity_id?: string; created_at: Date; } ``` --- ## Definition of Done (DoD) - [ ] Dashboard con metricas basicas - [ ] Filtro por periodo - [ ] Graficas de uso - [ ] Datos en tiempo real - [ ] Tests pasando --- **Creada por:** Requirements-Analyst **Fecha:** 2025-12-06