6. Identificación correcta de actores principales y secundarios

6.1 Introducción

En un caso de uso pueden participar varios actores, pero no todos cumplen el mismo papel. Algunos actores buscan alcanzar el objetivo principal; otros colaboran, entregan información, reciben resultados o son consultados por el sistema durante el proceso.

Distinguir correctamente entre actor principal y actor secundario permite escribir casos de uso más claros. También ayuda a identificar quién obtiene valor directo, quién inicia la interacción, qué dependencias externas existen y qué pruebas deben considerarse.

Esta distinción es especialmente importante en sistemas que se integran con servicios externos, sistemas administrativos, dispositivos o áreas de una organización.

6.2 Actor principal

El actor principal es el actor que busca lograr el objetivo central del caso de uso. Es quien necesita obtener un resultado de valor a partir de la interacción con el sistema.

En el caso de uso Solicitar turno, el actor principal suele ser el Paciente, porque su objetivo es obtener una reserva para una consulta médica. El sistema existe para permitirle alcanzar ese resultado.

Pregunta clave: ¿para quién tiene valor directo el resultado final del caso de uso?

6.3 Actor secundario

El actor secundario participa en el caso de uso, pero no es quien persigue el objetivo principal. Puede proveer información, recibir una notificación, validar datos, autorizar una operación o colaborar para que el sistema complete el proceso.

En el caso de uso Solicitar turno, un Servicio de mensajería puede ser actor secundario si el sistema lo utiliza para enviar la confirmación al paciente. También podría participar una Obra social si el sistema consulta la cobertura antes de permitir la reserva.

Pregunta clave: ¿qué entidad externa necesita el sistema para completar o comunicar el resultado del caso de uso?

6.4 Diferencia central entre ambos

El actor principal impulsa el objetivo del caso de uso. Los actores secundarios participan como apoyo, dependencia o destinatarios de información. Esta diferencia no depende de si el actor es una persona o un sistema externo, sino del rol que cumple en esa interacción específica.

Diferencia entre actor principal y actores secundarios en un caso de uso de solicitar turno

6.5 Un actor puede cambiar de papel

Un mismo actor puede ser principal en un caso de uso y secundario en otro. El papel depende del objetivo analizado.

Por ejemplo, en un sistema de turnos médicos:

  • En Solicitar turno, el Paciente puede ser actor principal.
  • En Consultar agenda diaria, el Médico puede ser actor principal.
  • En Enviar recordatorio de turno, el Servicio de mensajería puede ser actor secundario.
  • En Validar cobertura médica, la Obra social puede actuar como sistema externo consultado.

Por eso no conviene etiquetar a un actor como principal o secundario para todo el sistema sin mirar cada caso de uso.

6.6 Iniciador no siempre significa actor principal

Muchas veces el actor principal inicia el caso de uso, pero no siempre ocurre así. Un caso de uso puede comenzar por tiempo, por un evento externo o por una solicitud de otro sistema, y aun así beneficiar a un actor distinto.

Por ejemplo, un sistema puede enviar recordatorios automáticos de turnos cada tarde. El disparador puede ser una tarea programada, pero el beneficiario principal podría ser el Paciente, que recibe el recordatorio para no olvidar su consulta.

Por eso conviene distinguir entre quién inicia y quién obtiene el valor principal.

6.7 Actor principal y usuario final

El actor principal muchas veces es un usuario final, pero no siempre. En sistemas integrados, el actor principal puede ser otro sistema que necesita obtener un servicio.

Por ejemplo, una plataforma de comercio electrónico puede tener un caso de uso Consultar estado de envío. Si una aplicación móvil externa solicita esa información para mostrársela al cliente, esa aplicación puede actuar como actor principal frente al servicio consultado.

Lo importante es identificar quién solicita o necesita el resultado desde fuera del sistema analizado.

6.8 Preguntas para identificar el actor principal

Para encontrar el actor principal de un caso de uso, se pueden aplicar estas preguntas:

  • ¿Quién quiere lograr el objetivo que nombra el caso de uso?
  • ¿Para quién tiene valor directo el resultado?
  • ¿Quién se beneficia si el caso de uso termina correctamente?
  • ¿Quién quedaría insatisfecho si esta funcionalidad no existiera?
  • ¿Quién necesita que el sistema le preste este servicio?
  • ¿El nombre del caso de uso expresa claramente el objetivo de ese actor?

6.9 Preguntas para identificar actores secundarios

Para encontrar actores secundarios, conviene preguntar:

  • ¿El sistema necesita consultar a otro sistema para completar el caso de uso?
  • ¿Alguna entidad externa debe validar, autorizar o confirmar información?
  • ¿Alguien externo recibe una notificación o un resultado?
  • ¿Hay dispositivos que entregan datos durante la interacción?
  • ¿Hay organizaciones externas que participan en una regla de negocio?
  • ¿Existe una dependencia externa que puede fallar y generar un flujo alternativo?

6.10 Ejemplo: solicitar turno

Analicemos el caso de uso Solicitar turno en un sistema de turnos médicos:

Actor Tipo de participación Motivo
Paciente Actor principal Busca reservar una consulta médica.
Servicio de mensajería Actor secundario Envía la confirmación del turno.
Obra social Actor secundario Puede validar la cobertura del paciente.
Médico No necesariamente participa en este caso Su agenda se consulta, pero el médico no siempre interactúa durante la reserva.

6.11 Ejemplo: administrar agenda

En el caso de uso Administrar agenda, el actor principal puede ser el Administrador o la Recepcionista, según quién tenga la responsabilidad de configurar horarios, días de atención y disponibilidad.

El Médico podría ser actor secundario si el sistema le notifica cambios, o podría ser actor principal si el objetivo del caso de uso es que el propio médico defina su disponibilidad. La clasificación depende del objetivo concreto del caso de uso.

6.12 Relación con el nombre del caso de uso

El nombre del caso de uso debe ayudar a reconocer el objetivo del actor principal. Si el nombre no deja claro quién obtiene valor, puede ser una señal de que el caso de uso está mal definido.

Por ejemplo, Enviar datos a servicio externo parece una acción técnica del sistema. En cambio, Confirmar pago o Validar cobertura médica expresan objetivos más comprensibles desde el punto de vista de la interacción.

6.13 Actores secundarios y flujos alternativos

Los actores secundarios suelen ser importantes para identificar flujos alternativos y excepciones. Si el caso de uso depende de una pasarela de pago, un servicio de mensajería o un sistema externo de validación, hay que pensar qué ocurre cuando esa dependencia no responde o rechaza la operación.

Por ejemplo:

  • La pasarela de pago rechaza la tarjeta.
  • El servicio de mensajería no puede enviar la confirmación.
  • La obra social no responde a la consulta de cobertura.
  • El sensor envía un dato inválido o incompleto.

Estas situaciones no deben ignorarse, porque afectan el comportamiento esperado del sistema.

6.14 Errores frecuentes

Al distinguir actores principales y secundarios, suelen aparecer estos errores:

  • Suponer que el actor que inicia siempre es el actor principal.
  • Marcar como principal al actor con más permisos, aunque no sea quien busca el objetivo.
  • Ignorar sistemas externos que colaboran con el caso de uso.
  • Declarar actores secundarios que no participan realmente en la interacción.
  • Confundir módulos internos del sistema con actores secundarios.
  • Usar la misma clasificación para todos los casos de uso sin analizar cada objetivo.

6.15 Criterio práctico de decisión

Una forma simple de decidir es leer el caso de uso como una frase:

El actor principal usa el sistema para lograr un objetivo. Los actores secundarios ayudan al sistema a completar, validar o comunicar ese objetivo.

Si al aplicar esta frase el caso de uso no queda claro, probablemente haga falta revisar el nombre del caso de uso, el alcance, los actores o el objetivo que se está intentando describir.

6.16 Qué debes recordar de este tema

  • El actor principal busca lograr el objetivo central del caso de uso.
  • Los actores secundarios colaboran, validan, reciben información o proveen servicios externos.
  • Un actor puede ser principal en un caso de uso y secundario en otro.
  • Quien inicia la interacción no siempre es el actor principal.
  • Los sistemas externos pueden ser actores secundarios si participan en la interacción.
  • Los actores secundarios ayudan a descubrir dependencias, alternativas y excepciones.
  • La clasificación debe hacerse caso por caso, según el objetivo analizado.

6.17 Conclusión

Identificar correctamente actores principales y secundarios permite comprender mejor el sentido de cada caso de uso. El actor principal explica para quién existe la funcionalidad; los actores secundarios muestran con qué entidades externas debe colaborar el sistema.

Esta distinción mejora la especificación, ayuda a encontrar flujos alternativos y permite detectar dependencias externas. En el próximo tema analizaremos los objetivos de los actores y el valor entregado por el sistema.