CarneiroTech/Content/Cases/es/industrial-learning-platform.md

589 lines
16 KiB
Markdown

---
title: "Plataforma de Capacitación Industrial - De Wireframes a Sistema Completo"
slug: "industrial-learning-platform"
summary: "Solution Design para plataforma de microlearning en empresa de gases industriales. Identificación de requisitos críticos no mapeados (admin, registros, exportación) antes de la presentación al cliente, evitando retrabajo y garantizando usabilidad real."
client: "Empresa de Gases Industriales"
industry: "Industrial & Manufactura"
timeline: "4 meses"
role: "Solution Architect & Tech Lead"
image: ""
tags:
- Solution Design
- EdTech
- Learning Platform
- Requirements Analysis
- Tech Lead
- User Stories
- .NET
- Product Design
featured: true
order: 5
date: 2024-06-01
seo_title: "Plataforma de Capacitación Industrial - Solution Design"
seo_description: "Caso de Solution Design para plataforma de microlearning, identificando requisitos críticos antes de la presentación al cliente y liderando desarrollo hasta producción."
seo_keywords: "solution design, learning platform, microlearning, requirements analysis, tech lead, industrial training"
---
## Descripción General
Empresa de gases industriales solicita plataforma para capacitar empleados usando metodología de **microlearning** (contenidos cortos y objetivos).
**Requisito inicial:** "Queremos solo la estructura - ruta de aprendizaje, microlearning, pregunta de test y puntuación."
**Problema:** Especificación incompleta que resultaría en sistema **imposible de usar** (sin forma de registrar contenido, sin administradores, sin exportar resultados).
**Solución:** Análisis crítico de requisitos **antes de la presentación al cliente**, identificando gaps funcionales y proponiendo solución completa.
---
## Desafío
### Wireframes Bonitos, Funcionalidad Incompleta
**Situación inicial:**
UX creó wireframes hermosos mostrando:
- ✅ Rutas de aprendizaje
- ✅ Microlearnings (video/texto + imagen)
- ✅ Preguntas de test (opción múltiple)
- ✅ Puntuación por empleado
**Problema identificado:**
Nadie (cliente, UX, comercial) pensó en:
**¿Cómo entra contenido en el sistema?**
- ¿Quién registra rutas?
- ¿Quién crea microlearnings?
- ¿Quién escribe preguntas?
- ¿Interfaz manual o import?
**¿Quién gestiona el sistema?**
- ¿Existe concepto de admin?
- ¿RRHH puede crear admins?
- ¿Gestor de área puede ver solo su equipo?
**¿Cómo salen datos del sistema?**
- RRHH necesita reportes
- Compliance necesita evidencias
- ¿Cómo exportar datos?
- ¿Formato: Excel? PDF? API?
**Riesgo real:**
Si desarrolláramos exactamente lo que fue pedido:
- Sistema funcionaría técnicamente ✅
- **Pero sería completamente inutilizable** ❌
- Cliente tendría que pagar refacción para incluir CRUD básico
- Retrabajo + costo adicional + frustración
---
## Proceso de Solution Design
### Etapa 1: Análisis Crítico (Antes de la Presentación)
**Acción tomada:** Convoqué reunión con UX **antes** de presentar al cliente.
**Puntos levantados:**
**"¿Cómo entra el primer contenido al sistema?"**
- UX: "Ah... no pensamos en eso. ¿Ustedes van a poblar la base de datos?"
- Yo: "¿Y cuando cliente quiera agregar nueva ruta? ¿Vamos a alterar BD en producción?"
**"¿Quién es el dueño del sistema?"**
- UX: "RRHH, imagino."
- Yo: "¿Solo una persona? ¿Y si sale de la empresa? ¿Cómo delega?"
**"¿RRHH pidió reportes?"**
- UX: "No fue mencionado en el briefing."
- Yo: "RRHH siempre necesita reportes. Es para compliance (NR, ISO)."
---
### Etapa 2: Requisitos Funcionales Identificados
Propuse 4 módulos adicionales **esenciales**:
#### 1. Sistema de Administración
**Funcionalidades:**
- Usuario estándar: Solo realiza capacitaciones
- Usuario admin: Gestiona contenido + ve reportes
- Admin puede promover otros usuarios a admin
- Control de acceso (admin general vs admin de área)
**Por qué es crítico:**
Sin esto, sistema es estático (contenido nunca se actualiza).
---
#### 2. CRUD de Contenido
**a) Registro de Rutas:**
- Nombre de la ruta
- Descripción
- Orden de los microlearnings
- Ruta activa/inactiva (permite despublicar)
**b) Registro de Microlearnings:**
- Título
- Tipo: Texto simple (2 párrafos) O Video
- Upload de imagen (si texto)
- URL de video (si video)
- Orden dentro de la ruta
**c) Registro de Preguntas:**
- Pregunta (texto)
- 3 opciones de respuesta:
- "Excelente" (verde)
- "Regular" (amarillo)
- "Malo" (rojo)
- Puntuación por respuesta (ej: 10, 5, 0 puntos)
- Feedback personalizado por respuesta
**Por qué es crítico:**
Cliente necesita actualizar contenido sin llamar a dev/DBA.
---
#### 3. Exportación de Datos
**Funcionalidades:**
- Exportar a Excel (.xlsx)
- Filtros:
- Por período (fecha inicio/fin)
- Por ruta
- Por empleado
- Por área/departamento
- Columnas exportadas:
- Nombre del empleado
- Matrícula
- Ruta completada
- Puntuación total
- Fecha de conclusión
- Respuestas individuales (para auditoría)
**Por qué es crítico:**
RRHH necesita evidenciar capacitación para:
- Normas Reglamentarias (NR-13, NR-20 - gases inflamables)
- Auditorías ISO
- Procesos laborales
---
#### 4. Gestión de Usuarios
**Funcionalidades:**
- Importar empleados (upload CSV/Excel)
- Registro manual
- Activar/desactivar usuarios
- Asignar rutas obligatorias por área
- Notificaciones de pendientes
**Por qué es crítico:**
Empresa tiene 500+ empleados, registro manual es inviable.
---
### Etapa 3: Presentación al Cliente
**Abordaje:**
1. Mostré wireframes del UX (interfaz bonita)
2. Pregunté: "¿Cómo van a registrar la primera ruta?"
3. Cliente: "Ah... buena pregunta. No habíamos pensado en eso."
4. Presenté los 4 módulos adicionales
5. Cliente: "Tiene total sentido! Sin esto no podemos usar."
**Resultado:**
- Propuesta aprobada **con módulos adicionales**
- Alcance ajustado (timeline + presupuesto)
- Zero retrabajo futuro
- Cliente reconoció valor agregado
---
## Implementación
### Mi Rol en el Proyecto
**1. Solution Architect**
- Identificación de requisitos no funcionales
- Diseño de arquitectura (módulos, integraciones)
- Definición de tecnologías
**2. Tech Lead**
- Liderazgo técnico del equipo (3 devs)
- Code review
- Definición de estándares de código
- Gestión de riesgos técnicos
**3. Product Owner Técnico**
- Creación de **user stories** completas
- Priorización de backlog
- Refinamiento continuo con cliente
---
### Stack Técnico Elegido
**Backend:**
- `.NET 7` - APIs REST
- `Entity Framework Core` - ORM
- `SQL Server` - Base de datos
- `ClosedXML` - Generación de Excel
**Frontend:**
- `React` - Interfaz web
- `Material-UI` - Componentes
- `React Player` - Player de video
- `Chart.js` - Gráficos de progreso
**Infraestructura:**
- `Azure App Service` - Hospedaje
- `Azure Blob Storage` - Almacenamiento de videos/imágenes
- `Azure SQL Database` - Base de datos gestionada
---
### User Stories Creadas
Escribí **32 user stories** cubriendo todos los flujos. Ejemplos:
**US-01: Registrar Ruta (Admin)**
```
Como administrador del sistema
Quiero registrar una nueva ruta de capacitación
Para que empleados puedan realizar los cursos
Criterios de aceptación:
- Admin accede menú "Rutas" → "Nueva Ruta"
- Completa: Nombre, Descripción, Estado (Activa/Inactiva)
- Puede agregar microlearnings existentes a la ruta
- Define orden de los microlearnings (drag & drop)
- Sistema valida campos obligatorios
- Guarda y muestra mensaje de éxito
```
**US-15: Realizar Microlearning (Empleado)**
```
Como empleado
Quiero realizar un microlearning de mi ruta
Para aprender sobre el tema y ganar puntos
Criterios de aceptación:
- Empleado accede ruta asignada
- Ve lista de microlearnings (no completados primero)
- Hace clic en microlearning → abre pantalla con:
- Texto (2 párrafos) + Imagen O
- Player de video embebido
- Botón "Continuar" aparece después de:
- 30s (si texto)
- Final del video (si video)
- Marca microlearning como visto
- Pregunta de test aparece automáticamente
```
**US-22: Exportar Resultados (Admin)**
```
Como administrador
Quiero exportar resultados de capacitación a Excel
Para generar reportes de compliance y auditorías
Criterios de aceptación:
- Admin accede "Reportes" → "Exportar"
- Selecciona filtros (período, ruta, área)
- Hace clic "Generar Excel"
- Sistema procesa y descarga archivo .xlsx
- Excel contiene columnas: Nombre, Matrícula, Ruta, Puntos, Fecha, Respuestas
- Formato legible (headers en negrita, columnas autoajustadas)
```
---
## Características Clave Implementadas
### 1. Sistema de Puntuación Gamificado
**Mecánica:**
- Cada pregunta vale puntos (configurable)
- Respuesta "Excelente": 10 puntos
- Respuesta "Regular": 5 puntos
- Respuesta "Malo": 0 puntos
**Dashboard del empleado:**
- Puntuación total
- Ranking (opcional, configurable)
- Badges por rutas completadas
- Progreso visual (barra de %)
**Por qué funciona:**
Empleados de planta se enganchan más con elementos de gamificación.
---
### 2. Microlearning Adaptativo
**Tipos de contenido:**
**Texto + Imagen:**
- 2 párrafos (máx 300 palabras)
- 1 imagen ilustrativa
- Ideal para: Procedimientos, normas, conceptos
**Video:**
- Videos cortos (2-5 min)
- Player embebido (YouTube/Vimeo o upload)
- Ideal para: Demostraciones, operaciones de equipo
**¿Por qué microlearning?**
- Empleados realizan en el intervalo (10-15min)
- Contenido corto = mayor retención
- Facilita actualización (vs cursos largos)
---
### 3. Sistema de Administración Delegada
**Jerarquía:**
```
Admin General (RRHH)
↓ puede promover
Admin de Área (Gerentes)
↓ puede visualizar solo
Empleados de su área
```
**Permisos:**
- Admin general: Crea rutas, promueve admins, ve todos los datos
- Admin de área: Ve solo reportes de su área
- Empleado: Solo realiza capacitaciones
**Auditoría:**
- Logs de quién creó/editó cada contenido
- Histórico de promociones a admin
- Compliance SOX/ISO
---
### 4. Exportación para Compliance
**Formato del Excel generado:**
| Matrícula | Nombre | Área | Ruta | Fecha Conclusión | Puntos | Estado |
|-----------|------|------|--------|----------------|--------|--------|
| 1001 | João Silva | Producción | Seguridad NR-20 | 15/11/2024 | 95/100 | ✅ Aprobado |
| 1002 | María Santos | Logística | Manejo Gases | 14/11/2024 | 78/100 | ✅ Aprobado |
**Pestaña adicional: Detalle de Respuestas**
- Permite auditoría: "¿Empleado X acertó pregunta Y?"
- Evidencia para procesos laborales
- Compliance NR-13/NR-20
---
## Resultados e Impacto
### Sistema en Producción
**Estado actual:** En uso hace 4+ meses
**Métricas de adopción:**
- 👥 500+ empleados registrados
- 📚 12 rutas activas
- 📖 150+ microlearnings creados
- ✅ 8.000+ capacitaciones completadas
- 📊 100+ reportes exportados (compliance)
**Tasa de conclusión:** 87% (media industria: 45%)
---
### Impacto en el Cliente
**Antes:**
- Capacitaciones presenciales (costo alto, agenda difícil)
- Evidencias en papel (pérdidas, difícil auditoría)
- Dificultad en actualizar contenido
**Después:**
- Capacitación asíncrona (empleado realiza cuando puede)
- Evidencias digitales (compliance facilitado)
- RRHH actualiza contenido sin llamar a TI
- Reducción del 70% en costo de capacitación
**Feedback del cliente:**
> "Si hubiéramos implementado solo lo que pedimos inicialmente, el sistema sería inútil. El análisis previo salvó el proyecto."
---
### Valor del Solution Design
**ROI del análisis preventa:**
**Escenario A (sin análisis):**
1. Desarrollar solo interfaz (2 meses)
2. Cliente prueba y percibe que falta CRUD (1 mes después)
3. Refacción para agregar módulos (2+ meses)
4. **Total: 5+ meses + frustración del cliente**
**Escenario B (con análisis - lo que hicimos):**
1. Identificar requisitos antes (1 semana)
2. Aprobar alcance completo (1 semana)
3. Desarrollar solución correcta (4 meses)
4. **Total: 4 meses + cliente satisfecho**
**Economía:** 1+ mes de retrabajo + costo de oportunidad
---
## Tech Stack
`.NET 7` `C#` `Entity Framework Core` `SQL Server` `React` `Material-UI` `Azure App Service` `Azure Blob Storage` `ClosedXML` `Chart.js` `User Stories` `Solution Design` `Tech Lead`
---
## Decisiones Clave & Trade-offs
### ¿Por qué no usar LMS listo? (Moodle, Canvas)
**Alternativas consideradas:**
1. ❌ Moodle (open-source, gratuito)
2. ❌ Totara/Canvas (LMS corporativo)
3.**Desarrollo custom**
**Justificación:**
- LMS genérico: Complejidad innecesaria (foros, wikis, etc)
- Cliente quiere **solo microlearning** (simplicidad)
- Costo de licencia LMS > costo de dev custom
- Integración con AD/SSO del cliente (más fácil custom)
- UX optimizada para planta (mobile-first, touch)
---
### ¿Por qué 3 opciones de respuesta (vs 4-5)?
**Elección:** Verde (Excelente), Amarillo (Regular), Rojo (Malo)
**Justificación:**
- Empleados de planta prefieren simplicidad
- Colores universales (semáforo)
- Evita paradoja de la elección (menos opciones = más engagement)
- Gamificación más clara
---
### ¿Por qué Export Excel (vs Dashboard online)?
**Ambos fueron implementados**, pero Excel es crítico para:
**Compliance regulatorio:**
- Auditores piden "archivo firmado digitalmente"
- NR-13/NR-20 exigen evidencia física
- Procesos laborales aceptan Excel
**Flexibilidad:**
- RRHH puede hacer análisis personalizados en Excel
- Combinar con otras fuentes de datos
- Presentaciones para dirección
---
## Lecciones Aprendidas
### 1. Solution Design Previene Retrabajo
**Lección:** 1 semana de análisis crítico economiza meses de refacción.
**Aplicación:**
- Siempre cuestionar especificaciones incompletas
- Pensar en el "día siguiente" (¿quién gestiona esto en producción?)
- Involucrar cliente en discusiones de requisitos
---
### 2. UX ≠ Requisitos Funcionales
**Lección:** Wireframes bonitos no sustituyen análisis de requisitos.
**UX se enfoca en:** Cómo usuario **usa** el sistema
**Solution Design se enfoca en:** Cómo sistema **funciona** end-to-end
Ambos son necesarios y complementarios.
---
### 3. Preguntar "¿Cómo?" es Más Importante que "¿Qué?"
**Cliente dice:** "Quiero rutas y microlearnings"
**Solution Designer pregunta:** "¿Cómo entra la primera ruta al sistema?"
Esta pregunta simple reveló 4 módulos faltantes.
---
### 4. User Stories Bien Escritas Aceleran Desarrollo
**Inversión:** 2 semanas escribiendo 32 user stories detalladas
**Retorno:**
- Devs sabían exactamente qué construir
- Zero ambigüedad
- Muy pocos bugs (requisitos claros)
- Cliente validó historias antes de codificar
**Lección:** Tiempo gastado en planificación reduce tiempo de desarrollo.
---
### 5. Compliance es Requisito Oculto
**En industrias reguladas** (salud, energía, químico), siempre habrá:
- Necesidad de auditoría
- Exportación de evidencias
- Logs de quién hizo qué
**Lección:** Preguntar sobre compliance **antes**, no después.
---
## Desafíos Superados
| Desafío | Solución | Resultado |
|---------|---------|-----------|
| Especificación incompleta | Análisis crítico preventa | Alcance correcto desde inicio |
| Cliente sin conocimiento técnico | User stories en lenguaje de negocio | Cliente validó requisitos |
| Empleados con baja familiaridad digital | UX simplificado (3 botones, colores) | 87% tasa de conclusión |
| Compliance NR-13/NR-20 | Export Excel con detalle | Aprobado en 2 auditorías |
| Gestión de 500+ usuarios | Import CSV + jerarquía de admins | Onboarding en 1 semana |
---
## Próximos Pasos (Roadmap Futuro)
**Funcionalidades planificadas:**
1. **Notificaciones Push**
- Recordar empleado de capacitación pendiente
- Avisar de nueva ruta obligatoria
2. **App Mobile Nativo**
- Offline-first (videos descargados)
- Empleados sin computadora
3. **Certificados Digitales**
- PDF firmado digitalmente
- QR code para validación
4. **Inteligencia de Datos**
- ¿Qué microlearnings tienen más error?
- Identificar gaps de conocimiento por área
---
**Resultado:** Sistema funcional en producción, cliente satisfecho, zero retrabajo - todo porque 1 semana fue invertida en **pensar antes de codificar**.
[¿Necesita análisis crítico de requisitos? Póngase en contacto](#contact)