589 lines
16 KiB
Markdown
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)
|