7.5 KiB
7.5 KiB
EPICA: EPIC-VT-005 - Corte (Nesting)
Metadata
| Campo | Valor |
|---|---|
| ID | EPIC-VT-005 |
| Nombre | Corte (Nesting) |
| Modulo | corte |
| Fase | Fase 1 - MVP |
| Prioridad | P0 (Critico) |
| Estado | Backlog |
| Story Points | 45 |
| Sprint(s) | Sprint 5-6 |
Descripcion
Módulo 100% nuevo especializado en optimización de corte de vidrio. Implementa algoritmos de nesting para maximizar aprovechamiento de láminas, minimizando desperdicio. Incluye visualización gráfica del plan de corte y gestión de retazos aprovechables.
Objetivo de Negocio
- Reducir desperdicio de material en 20-30%
- Optimizar uso de láminas completas
- Aprovechar retazos para piezas pequeñas
- Reducir tiempo de planificación de corte
- Trazabilidad de material por pieza
Historias de Usuario
| ID | Historia | Prioridad | SP | Estado |
|---|---|---|---|---|
| US-VT005-001 | Como planificador, quiero generar plan de corte automático que minimice desperdicio | P0 | 13 | Backlog |
| US-VT005-002 | Como planificador, quiero visualizar gráficamente el plan de corte para validarlo | P0 | 8 | Backlog |
| US-VT005-003 | Como planificador, quiero ajustar manualmente posición de piezas en lámina para optimizar | P1 | 5 | Backlog |
| US-VT005-004 | Como operador de corte, quiero ver plan de corte en pantalla junto a mesa para ejecutar | P0 | 3 | Backlog |
| US-VT005-005 | Como operador de corte, quiero marcar piezas cortadas para registrar avance | P0 | 3 | Backlog |
| US-VT005-006 | Como almacenista, quiero registrar retazos aprovechables para reutilizar | P0 | 3 | Backlog |
| US-VT005-007 | Como planificador, quiero incluir retazos disponibles en plan de corte para aprovecharlos | P1 | 5 | Backlog |
| US-VT005-008 | Como jefe de producción, quiero ver métricas de desperdicio por lámina para medir eficiencia | P1 | 3 | Backlog |
| US-VT005-009 | Como admin, quiero configurar margen de corte (kerf) por tipo de máquina | P2 | 2 | Backlog |
Total Story Points: 45 SP
Algoritmo de Nesting
┌─────────────────────────────────────────────────┐
│ LÁMINA 2440 x 1830 mm │
│ ┌──────────────┐ ┌──────────────┐ ┌────────┐ │
│ │ │ │ │ │ │ │
│ │ Pieza 1 │ │ Pieza 2 │ │ P3 │ │
│ │ 800x600 │ │ 700x500 │ │ 400x │ │
│ │ │ │ │ │ 500 │ │
│ └──────────────┘ └──────────────┘ └────────┘ │
│ ┌──────────────┐ ┌─────────┐ ┌──────────────┐ │
│ │ │ │ │ │ │ │
│ │ Pieza 4 │ │ P5 │ │ RETAZO │ │
│ │ 600x400 │ │ 300x │ │ Aprovechable│ │
│ │ │ │ 400 │ │ │ │
│ └──────────────┘ └─────────┘ └──────────────┘ │
│ ┌────────────────────────────────────────────┐ │
│ │ DESPERDICIO (no aprovechable) │ │
│ └────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────┘
Aprovechamiento: 87%
Retazo: 8%
Desperdicio: 5%
Criterios de Aceptacion de la Epica
Funcionales:
- Generar plan de corte automático (algoritmo bin packing)
- Visualización gráfica del plan de corte
- Edición manual de posiciones
- Considerar margen de corte (kerf)
- Registro de retazos aprovechables
- Inclusión de retazos en planes
- Métricas de aprovechamiento
No Funcionales:
- Generación de plan < 10 segundos para 50 piezas
- Aprovechamiento mínimo 80%
- Visualización responsive para pantallas de planta
Tecnicos:
- Algoritmo de nesting (bin packing 2D)
- Integración con inventario
- Integración con producción
- Canvas/SVG para visualización
Dependencias
Esta epica depende de:
| Epica/Modulo | Estado | Bloqueante |
|---|---|---|
| EPIC-VT-001 Fundamentos | Backlog | Si |
| EPIC-VT-003 Produccion | Backlog | Si |
| EPIC-VT-004 Inventario | Backlog | Si |
Esta epica bloquea:
| Epica/Modulo | Razon |
|---|---|
| EPIC-VT-006 Templado | Requiere piezas cortadas |
Desglose Tecnico
Database:
- Schema:
cutting - Tablas: 5 (cutting_plans, plan_pieces, remnants, machines, cut_logs)
- Funciones: 2 (calculate_waste, register_remnant)
- Indices: Por lámina, orden, estado
Backend:
- Modulo:
cutting - Entities: 4 (CuttingPlan, PlanPiece, Remnant, CutLog)
- Services: NestingService (algoritmo)
- Endpoints: 12
- Tests: 25
Frontend:
- Paginas: 3 (CuttingPlans, PlanViewer, Remnants)
- Componentes: 10 (CuttingCanvas, PieceEditor, WasteMetrics, etc.)
- Stores: 1 (cuttingStore)
Endpoints API
| Metodo | Endpoint | Descripcion |
|---|---|---|
| POST | /api/cutting/plans | Crear plan de corte |
| GET | /api/cutting/plans/:id | Ver plan de corte |
| POST | /api/cutting/plans/:id/optimize | Ejecutar nesting |
| PATCH | /api/cutting/plans/:id/pieces | Ajustar posiciones |
| POST | /api/cutting/plans/:id/execute | Ejecutar corte |
| POST | /api/cutting/plans/:id/pieces/:pieceId/cut | Marcar pieza cortada |
| GET | /api/cutting/remnants | Listar retazos |
| POST | /api/cutting/remnants | Registrar retazo |
| GET | /api/cutting/metrics | Métricas de desperdicio |
Riesgos
| Riesgo | Probabilidad | Impacto | Mitigacion |
|---|---|---|---|
| Algoritmo no óptimo | Media | Alto | Benchmarks vs soluciones comerciales |
| Rotación incorrecta de piezas | Media | Medio | Considerar dirección del vidrio |
| Retazos no aprovechados | Alta | Medio | Alertas de retazos disponibles |
Nota Técnica
Este módulo es 100% nuevo y no tiene equivalente en el ERP-Core. El algoritmo de nesting es específico para la industria del vidrio y debe considerar:
- Dirección del vidrio (no todas las piezas pueden rotar)
- Margen de corte (kerf) variable por máquina
- Dimensiones máximas de láminas estándar
- Retazos mínimos aprovechables
Definition of Ready (DoR)
- Historias de usuario definidas
- Criterios de aceptacion claros
- Dependencias identificadas
- Estimacion completada
- Investigación de algoritmos de nesting
- Definición de tamaño mínimo de retazo
Definition of Done (DoD)
- Algoritmo de nesting funcionando
- Visualización gráfica de planes
- Registro de retazos operativo
- Métricas de aprovechamiento
- Tests de algoritmo
- Documentación de API
Historial
| Fecha | Cambio | Autor |
|---|---|---|
| 2025-12-08 | Creacion de epica | Claude-Agent |
Creada por: Claude-Agent Fecha: 2025-12-08 Ultima actualizacion: 2025-12-08