@startuml uml-use-case-overview !include _style.iuml left to right direction title 2.1 Diagrama de casos de uso - Vista general ' ===================================================================== ' Vista general: 10 actores primarios y 4 secundarios. Los casos se ' agrupan por dominio funcional para que la figura quepa en una pagina ' carta. Cada grupo se detalla en un sub-diagrama dedicado. ' ===================================================================== ' ----- Actores primarios ----- actor "Cliente" as Cli actor "Prestador" as Pre actor "SuperAdmin" as SA actor "Admin" as Adm actor "AgenteSoporte" as Sop actor "Finanzas" as Fin actor "Compliance" as Com actor "RRHH" as RH actor "Marketing" as Mkt actor "LectorBasico" as Lec ' ----- Actores secundarios (sistemas externos) ----- actor "Resend" as Res <> actor "Neon" as Neo <> actor "ExpoEAS" as EAS <> actor "Stripe" as Stp <> ' ----- Generalizacion de roles administrativos ----- SA <|-- Adm Adm <|-- Sop rectangle "ExpressMX" { together { package "Identidad y RBAC" as G_ID { usecase "Iniciar sesion" as UC_LOGIN usecase "Gestionar usuarios" as UC_USR usecase "Gestionar roles" as UC_ROL usecase "Acceder break-glass" as UC_BG usecase "Rotar PIN" as UC_PIN } package "Onboarding y RRHH" as G_ON { usecase "Enviar invitacion" as UC_INV usecase "Redimir invitacion" as UC_RED usecase "Subir documentos" as UC_DOC usecase "Aprobar prestador" as UC_APR } } together { package "Operacion (ordenes)" as G_OP { usecase "Solicitar servicio" as UC_SOL usecase "Aceptar job" as UC_ACE usecase "Rastrear orden" as UC_RAS usecase "Finalizar job" as UC_FIN usecase "Calificar" as UC_CAL } package "Catalogo y marketing" as G_MK { usecase "Buscar servicios" as UC_BUS usecase "Gestionar servicios" as UC_GES usecase "Crear cupon" as UC_CUP usecase "Crear banner" as UC_BAN } } together { package "Finanzas" as G_FIN { usecase "Generar corte" as UC_COR usecase "Aprobar reembolso" as UC_REM usecase "Emitir factura" as UC_FAC usecase "Procesar reembolso" as UC_PRE } package "Soporte ITSM" as G_SOP { usecase "Abrir ticket" as UC_TIC usecase "Acceder cliente con PIN" as UC_APIN usecase "Escalar ticket" as UC_ESC usecase "Crear articulo KB" as UC_KB } } package "Auditoria y compliance" as G_COM { usecase "Ver logs de auditoria" as UC_LOG usecase "Exportar logs" as UC_EXP usecase "Revisar break-glass" as UC_RBG } } ' ----- Asociaciones por actor ----- Cli --> UC_LOGIN Cli --> UC_BUS Cli --> UC_SOL Cli --> UC_RAS Cli --> UC_CAL Cli --> UC_TIC Pre --> UC_LOGIN Pre --> UC_RED Pre --> UC_DOC Pre --> UC_ACE Pre --> UC_FIN Pre --> UC_CAL SA --> UC_USR SA --> UC_ROL SA --> UC_BG SA --> UC_PIN Adm --> UC_GES Adm --> UC_APR Sop --> UC_TIC Sop --> UC_APIN Sop --> UC_ESC Sop --> UC_KB Fin --> UC_COR Fin --> UC_REM Fin --> UC_FAC Fin --> UC_PRE Com --> UC_LOG Com --> UC_EXP Com --> UC_RBG RH --> UC_INV Mkt --> UC_CUP Mkt --> UC_BAN Lec --> UC_LOG ' ----- Actores secundarios (lado del sistema) ----- UC_INV --> Res : <> UC_TIC --> Neo : <> UC_FIN --> EAS : <> UC_PRE --> Stp : <> footer Fuente: apps/web/src/app/api, apps/web/src/app/dashboard, apps/mobile-client/app, apps/mobile-provider/app @enduml