Jhon Garcia Johan Hernandez Daniel Villegas
Este proyecto modela los procesos principales de una Electrificadora utilizando BPMN 2.0, DMN, Camunda Forms y Camunda Platform.
El objetivo es representar, analizar y automatizar el ciclo completo del servicio eléctrico: desde la toma de lectura del medidor hasta la entrega de la factura final al suscriptor.
Se desarrollaron tres macroprocesos principales y un conjunto de decisiones (DMN) y formularios humanos (Forms) necesarios para operar cada flujo BPM.
Representa la actividad que realiza el lector al registrar la lectura del medidor.
- Validar datos del suscriptor
- Procesar lectura capturada
- Comparar lectura actual vs lectura anterior
- Validación mediante
ValidarLectura.dmn - Manejo de errores y anomalías
- Registro digital de la lectura mediante Camunda Forms
- Almacenamiento en base de datos
lecturaActuallecturaAnterior- Información del medidor y suscriptor
- Consumo total
- Lectura validada
- Indicadores de anomalías
Genera la factura con base en la lectura validada y las reglas de negocio tarifarias.
- Recibir lecturas registradas
- Validar el estado del suscriptor
- Aplicar tarifas CREG por estrato
- Calcular consumo y valor final
- Validación mediante DMN
- Agendamiento técnico en caso de anomalías
- Generación de factura preliminar y final
- Factura generada
- Valores de consumo
- Tarifas aplicadas
- Posibles órdenes técnicas
Controla el proceso de entrega física de facturas.
- Clasificar facturas por zona
- Asignar ruta de entrega
- Registrar entrega exitosa
- Registrar novedades: dirección incorrecta, usuario ausente, acceso restringido
- Cierre del ciclo de entrega
Los artefactos principales (BPMN, DMN y Form) se encuentran en la carpeta static/ del repositorio.
AgendarVisitaTecnica.bpmnCartera_EMSA.bpmnEntregarFactura.bpmnEntregarLectura.bpmnGenerarFactura.bpmnGuardarEntrega.bpmnGuardarLectura.bpmnTomarLectura.bpmn
FinanciamientoEstratos.dmn— reglas tarifarias por estratoValidarEntrega.dmn— valida condiciones para entregar facturaValidarLectura.dmn— evalúa si la lectura es válida o anómalaVerificacion_Saldo.dmn— verifica estado de cartera del suscriptor
AnotarLectura.formConsulta_Estado_Cuenta.formCoordenar_Tecnico.formDatosLectura.formEnviarLecturas.formIniciarLectura.formMostrarFactura.formNotificar_Usuario.formRegistrarAvizo.formRegistrarEntrega.formRegistrarMedidor.formRegistrarVisita.formRegistro_Verificacion_Pago.formVerificarCliente.form
- Camunda Platform
- BPMN
- DMN
- Camunda Forms
- Java
- Spring Boot
- Maven
- Separación clara entre tareas humanas y automáticas.
- Uso de DMN para reglas de negocio reutilizables.
- Control de variables mediante IN/OUT mappings en Service Tasks.
- Subprocesos reutilizables y flujo jerárquico.
- Manejo explícito de errores y excepciones.
- Modelos documentados con anotaciones y descripciones.