erp-mecanicas-diesel/docs/08-epicas/EPIC-MMD-002-ordenes-servicio.md

7.2 KiB

EPICA: EPIC-MMD-002 - Ordenes de Servicio

Metadata

Campo Valor
ID EPIC-MMD-002
Nombre Ordenes de Servicio
Modulo ordenes-servicio
Fase Fase 1 - MVP
Prioridad P0 (Critico)
Estado Backlog
Story Points 55
Sprint(s) Sprint 4-5

Descripcion

Modulo central del sistema que gestiona el ciclo completo de ordenes de servicio: desde la recepcion del vehiculo, diagnostico, cotizacion, aprobacion, ejecucion de trabajos, hasta el cierre y entrega. Incluye tracking en tiempo real, asignacion de mecanicos y registro de refacciones utilizadas.


Objetivo de Negocio

  • Reducir tiempo de gestion de ordenes en 50%
  • Eliminar ordenes perdidas o sin seguimiento
  • Trazabilidad completa de cada servicio
  • Mejorar comunicacion con clientes
  • Facilitar facturacion posterior

Historias de Usuario

ID Historia Prioridad SP Estado
US-MMD002-001 Como recepcionista, quiero crear orden de servicio con datos del vehiculo y cliente para iniciar el proceso P0 5 Backlog
US-MMD002-002 Como recepcionista, quiero registrar sintomas/fallas reportadas por el cliente para informar al mecanico P0 3 Backlog
US-MMD002-003 Como jefe de taller, quiero asignar orden a un mecanico y bahia para distribuir trabajo P0 5 Backlog
US-MMD002-004 Como mecanico, quiero ver mis ordenes asignadas del dia para planear mi trabajo P0 5 Backlog
US-MMD002-005 Como mecanico, quiero registrar trabajos realizados con tiempo y refacciones para documentar el servicio P0 8 Backlog
US-MMD002-006 Como mecanico, quiero solicitar refacciones al almacen para completar la reparacion P0 5 Backlog
US-MMD002-007 Como jefe de taller, quiero ver estado de todas las ordenes en tablero Kanban para supervisar P0 8 Backlog
US-MMD002-008 Como recepcionista, quiero cerrar orden y generar pre-factura para cobrar al cliente P0 5 Backlog
US-MMD002-009 Como cliente, quiero recibir notificacion cuando mi vehiculo este listo para recogerlo P1 3 Backlog
US-MMD002-010 Como jefe de taller, quiero ver historial de ordenes por vehiculo para consulta rapida P1 5 Backlog
US-MMD002-011 Como admin, quiero configurar estados personalizados de orden para adaptarlos a mi proceso P2 3 Backlog

Total Story Points: 55 SP


Flujo de Estados de Orden

┌─────────────┐
│   RECIBIDO  │  ← Vehiculo llega, se crea orden
└──────┬──────┘
       │
       ▼
┌─────────────┐
│ EN_DIAGNOST │  ← Mecanico evalua el vehiculo
└──────┬──────┘
       │
       ▼
┌─────────────┐
│  COTIZADO   │  ← Se genera cotizacion para cliente
└──────┬──────┘
       │
       ▼
┌─────────────┐
│  APROBADO   │  ← Cliente aprueba trabajos
└──────┬──────┘
       │
       ▼
┌─────────────┐
│EN_REPARACION│  ← Mecanico ejecuta trabajos
└──────┬──────┘
       │
       ▼
┌─────────────┐
│   LISTO     │  ← Trabajos completados
└──────┬──────┘
       │
       ▼
┌─────────────┐
│  ENTREGADO  │  ← Cliente recoge vehiculo
└─────────────┘

Estados adicionales:

  • ESPERANDO_REFACCIONES - Orden pausada por falta de partes
  • CANCELADO - Orden cancelada por cliente

Criterios de Aceptacion de la Epica

Funcionales:

  • Crear orden con datos minimos: vehiculo, cliente, sintomas
  • Asignar orden a mecanico y bahia
  • Registrar trabajos con tiempo y costo
  • Solicitar y registrar refacciones usadas
  • Transiciones de estado con validaciones
  • Tablero Kanban de ordenes activas
  • Historial completo por vehiculo
  • Notificaciones por WhatsApp/SMS (opcional)

No Funcionales:

  • Carga de tablero < 2 segundos
  • Busqueda de orden por folio < 500ms
  • Soporte 50+ ordenes activas simultaneas

Tecnicos:

  • Integracion con modulo Inventario (refacciones)
  • Integracion con modulo Vehiculos (historial)
  • Integracion con modulo Diagnosticos (resultados)
  • Tests de flujo completo

Dependencias

Esta epica depende de:

Epica/Modulo Estado Bloqueante
EPIC-MMD-001 Fundamentos Backlog Si
EPIC-MMD-003 Diagnosticos Backlog Si
EPIC-MMD-004 Inventario Backlog Si
EPIC-MMD-005 Vehiculos Backlog Si

Esta epica bloquea:

Epica/Modulo Razon
EPIC-MMD-006 Cotizaciones Requiere ordenes
EPIC-MME-007 Facturacion Requiere ordenes cerradas
EPIC-MME-008 Reportes Requiere datos de ordenes

Desglose Tecnico

Database:

  • Schema: service_management
  • Tablas: 8 (ordenes, orden_items, orden_refacciones, estados_log, etc.)
  • Funciones: 4 (calcular_total, cambiar_estado, etc.)
  • Indices: Por folio, vehiculo, mecanico, estado

Backend:

  • Modulo: service-orders
  • Entities: 6 (ServiceOrder, OrderItem, OrderPart, StateLog, etc.)
  • Endpoints: 20+
  • Tests: 40+

Frontend:

  • Paginas: 5 (OrdersList, OrderDetail, OrderCreate, KanbanBoard, OrderHistory)
  • Componentes: 15+ (OrderCard, OrderForm, StateSelect, PartsRequest, etc.)
  • Stores: 2 (ordersStore, kanbanStore)

Endpoints API

Metodo Endpoint Descripcion
POST /api/orders Crear orden
GET /api/orders Listar ordenes (paginado, filtros)
GET /api/orders/:id Detalle de orden
PATCH /api/orders/:id Actualizar orden
POST /api/orders/:id/items Agregar trabajo a orden
POST /api/orders/:id/parts Solicitar refaccion
POST /api/orders/:id/state Cambiar estado
GET /api/orders/kanban Vista Kanban
GET /api/vehicles/:id/orders Historial por vehiculo

Riesgos

Riesgo Probabilidad Impacto Mitigacion
Flujo muy rigido Media Alto Estados configurables
Conflictos de inventario Media Medio Reservas de refacciones
Ordenes huerfanas Baja Medio Alertas de ordenes sin movimiento

Definition of Ready (DoR)

  • Historias de usuario definidas
  • Criterios de aceptacion claros
  • Dependencias identificadas
  • Estimacion completada
  • Modulos dependientes completados
  • Diseno de flujo aprobado

Definition of Done (DoD)

  • Flujo completo funcionando
  • Tablero Kanban operativo
  • Integraciones con inventario y vehiculos
  • Tests de integracion pasando
  • Documentacion de API
  • Demo con usuario real

Historial

Fecha Cambio Autor
2025-12-06 Creacion de epica Requirements-Analyst

Creada por: Requirements-Analyst Fecha: 2025-12-06 Ultima actualizacion: 2025-12-06