En casos de uso, un actor es una entidad externa que interactúa con el sistema para lograr un objetivo o para colaborar con una funcionalidad. El actor no forma parte del sistema que se está analizando, aunque pueda pertenecer a la misma organización.
Identificar actores correctamente es fundamental porque los casos de uso se construyen a partir de sus objetivos. Si no sabemos quién usa el sistema, quién recibe información o quién se comunica con él, será difícil definir funcionalidades claras.
Un actor puede ser una persona, otro sistema informático, un dispositivo físico o una organización externa. Lo importante no es su forma, sino su relación con el sistema.
Decir que un actor es externo significa que está fuera del límite del sistema. El actor puede iniciar una solicitud, responder a una consulta, recibir una notificación o intercambiar datos, pero no es parte interna del software que se está especificando.
Por ejemplo, en un sistema de turnos médicos, el paciente y el recepcionista son actores aunque sean personas de la clínica o usuarios habituales. También puede ser actor un sistema de mensajería que recibe una orden para enviar confirmaciones.
Los actores pueden clasificarse en varios tipos. Esta clasificación ayuda a descubrir interacciones que suelen olvidarse cuando solo se piensa en usuarios humanos. Un sistema puede comunicarse con personas, otros sistemas, dispositivos de hardware y organizaciones que cumplen un rol dentro del proceso.
Las personas son el tipo de actor más fácil de reconocer. Representan roles de usuarios que interactúan con el sistema para lograr objetivos concretos.
Ejemplos:
Al nombrar actores humanos conviene usar el rol que cumplen frente al sistema, no el nombre propio de una persona.
Un sistema externo puede ser actor cuando intercambia información con el sistema analizado. No importa si la comunicación es automática; si participa en una interacción relevante, puede modelarse como actor.
Ejemplos:
En estos casos, el sistema externo no es un módulo interno. Es una entidad separada con la que se intercambian datos o servicios.
Un dispositivo físico también puede ser actor si interactúa directamente con el sistema. Esto es común en sistemas industriales, médicos, logísticos, domóticos o de monitoreo.
Ejemplos:
El dispositivo se modela como actor cuando su participación es relevante para entender el caso de uso.
A veces conviene representar una organización como actor cuando la interacción no depende de una persona específica, sino de una entidad externa que cumple un rol institucional.
Ejemplos:
En algunos modelos, esa organización puede representarse como sistema externo si la interacción se realiza mediante software. La decisión depende del nivel de detalle que se necesite comunicar.
Un actor no siempre equivale a una cuenta de usuario. Una misma persona registrada puede cumplir distintos roles en diferentes contextos. Por ejemplo, una persona puede ser paciente en una clínica y administrador en otra aplicación.
Tampoco todos los actores necesitan iniciar sesión. Un sistema externo puede enviar información mediante una integración, y un visitante puede consultar información pública sin estar registrado. Lo importante es el rol que cumple frente al sistema.
Los actores deben representar roles frente al sistema, no necesariamente cargos formales de una organización. Si dos cargos usan el sistema de la misma manera y buscan los mismos objetivos, quizá convenga representarlos como un único actor.
Por ejemplo, "Empleado administrativo de sede norte" y "Empleado administrativo de sede sur" podrían ser simplemente Recepcionista si ambos registran turnos de la misma forma. En cambio, si tienen permisos o funciones diferentes, puede ser necesario separarlos.
Un actor principal es quien busca lograr el objetivo central del caso de uso. Un actor secundario participa para ayudar, proveer información, recibir datos o completar alguna parte de la interacción.
En el caso de uso Solicitar turno, el Paciente puede ser el actor principal porque quiere obtener una reserva. Un Servicio de correo electrónico puede ser actor secundario si el sistema lo usa para enviar la confirmación.
Para descubrir actores, conviene hacer preguntas orientadas a la interacción:
En un sistema de turnos médicos pueden aparecer varios actores:
| Actor | Tipo | Interacción con el sistema |
|---|---|---|
| Paciente | Persona | Solicita, consulta y cancela turnos. |
| Recepcionista | Persona | Registra turnos y modifica datos administrativos. |
| Médico | Persona | Consulta su agenda de atención. |
| Servicio de mensajería | Sistema externo | Envía confirmaciones y recordatorios. |
| Obra social | Organización o sistema externo | Valida cobertura del paciente. |
Los nombres de actores deben ser claros, breves y representativos del rol. Conviene usar sustantivos como Paciente, Administrador, Sistema contable o Sensor de temperatura.
No conviene usar nombres ambiguos como Usuario si existen varios tipos de usuarios con objetivos diferentes. Si Paciente, Médico y Recepcionista hacen cosas distintas, usar solo "Usuario" oculta información importante.
Al identificar actores, suelen aparecer estos errores:
Los actores son el punto de partida para comprender quién se relaciona con el sistema y qué objetivos necesita cumplir. No se limitan a usuarios humanos: también pueden ser sistemas externos, dispositivos físicos u organizaciones.
Una buena identificación de actores permite descubrir casos de uso completos y evitar que el análisis se centre solo en pantallas o funciones internas. En el próximo tema estudiaremos cómo distinguir actores principales y secundarios con mayor precisión.