Todo lo que necesita saber sobre el modelado de casos de uso

Un caso de uso describe cómo un usuario utiliza un sistema para lograr un objetivo particular. Un diagrama de casos de uso consta del sistema, los casos de uso relacionados y los actores, y los relaciona entre sí para visualizar: ¿qué se está describiendo? ( sistema ), ¿quién está usando el sistema? ( actores ) y ¿qué quieren lograr los actores? ( casos de uso ), por lo tanto, los casos de uso ayudan a garantizar que se desarrolle el sistema correcto al capturar los requisitos desde el punto de vista del usuario.

Diagrama de caso de uso de la tienda en línea

Origen del caso de uso

En estos días, el modelado de casos de uso a menudo se asocia con UML, aunque se introdujo antes de que existiera UML. Su breve historia es la siguiente:

Propósito del Diagrama de Caso de Uso

Los diagramas de casos de uso generalmente se desarrollan en una etapa temprana de desarrollo y las personas a menudo aplican el modelado de casos de uso para los siguientes propósitos:

  • Especificar el contexto de un sistema
  • Capturar los requisitos de un sistema
  • Validar una arquitectura de sistemas
  • Impulse la implementación y genere casos de prueba
  • Desarrollado por analistas junto con expertos en el dominio

¿Qué es un diagrama de casos de uso en UML?

Un caso de uso es una lista de acciones o pasos de eventos que normalmente definen las interacciones entre el rol de un actor y un sistema para lograr un objetivo. Un caso de uso es una técnica útil para identificar, aclarar y organizar los requisitos del sistema. Un caso de uso está compuesto por un conjunto de posibles secuencias de interacciones entre sistemas y usuarios que define las funcionalidades a implementar y la resolución de los errores que se puedan encontrar.

Si bien un caso de uso en sí mismo puede profundizar en muchos detalles (como el flujo de eventos y escenarios) sobre cada posibilidad, un diagrama de caso de uso puede ayudar a proporcionar una vista de nivel superior del sistema, proporcionando la representación gráfica y simplificada de lo que el sistema debe hacer realmente.

Un caso de uso (o conjunto de casos de uso) tiene estas características:

  1. Organiza los requisitos funcionales.
  2. Modela los objetivos de las interacciones sistema/actor (usuario)
  3. Describe un flujo principal de eventos (escenarios principales) y posiblemente otros flujos excepcionales (alternativas), también llamados caminos o escenarios de usuario

Notaciones del diagrama de casos de uso

Los casos de uso  definen las interacciones entre los actores externos y el sistema para lograr objetivos particulares. Un diagrama de casos de uso contiene cuatro componentes principales

Actor

Los actores suelen ser individuos involucrados con el sistema definidos de acuerdo a sus roles. El actor puede ser un ser humano u otro sistema externo.

Caso de uso

Un caso de uso describe cómo los actores usan un sistema para lograr un objetivo particular. Los casos de uso generalmente los inicia un usuario para cumplir objetivos que describen las actividades y variantes involucradas en el logro del objetivo.

Relación

Las relaciones entre los actores y los casos de uso.

Límite del sistema

El límite del sistema define el sistema de interés en relación con el mundo que lo rodea.


Beneficios del diagrama de casos de uso

  1. Los casos de uso son una técnica poderosa para obtener y documentar requisitos funcionales de caja negra.
  2. Porque los casos de uso son fáciles de entender y brindan una excelente manera de comunicarse con los clientes y usuarios, ya que están escritos en lenguaje natural.
  3. Los casos de uso pueden ayudar a administrar la complejidad de los proyectos grandes al dividir el problema en características principales del usuario (es decir, casos de uso) y al especificar las aplicaciones desde la perspectiva de los usuarios.
  4. Un escenario de caso de uso, a menudo representado por un diagrama de secuencia, implica la colaboración de múltiples objetos y clases, los casos de uso ayudan a identificar los mensajes (operaciones y la información o los datos requeridos, parámetros) que unen los objetos y las clases.
  5. Los casos de uso proporcionan una buena base para vincular la verificación de los modelos de nivel superior (es decir, la interacción entre los actores y un conjunto de objetos colaborativos) y, posteriormente, para la validación de los requisitos funcionales (es decir, el modelo de prueba de caja blanca).
  6. El enfoque basado en casos de uso proporciona enlaces trazables para el seguimiento de proyectos en los que las actividades de desarrollo clave, como los casos de uso, se implementan, prueban y entregan cumpliendo las metas y objetivos desde el punto de vista del usuario.

¿Cómo dibujar un diagrama de casos de uso?

Un modelo de caso de uso se puede desarrollar siguiendo los pasos a continuación.

  1. Identificar los Actores (rol de los usuarios) del sistema.
  2. Para cada categoría de usuarios, identifique todos los roles desempeñados por los usuarios relevantes para el sistema.
  3. Identificar cuáles son los usuarios que requieren que el sistema se realice para lograr estos objetivos.
  4. Cree casos de uso para cada objetivo.
  5. Estructurar los casos de uso.
  6. Priorizar, revisar, estimar y validar a los usuarios.

Tenga en cuenta que: para hacer que el enfoque de caso de uso sea más «ágil», no detalle todos los casos de uso, pero priorícelos en su cartera de productos, debe refinar el caso de uso en diferentes niveles de detalles según la fase de desarrollo con justo a tiempo y de manera justa.

Tú también puedes:

  1. Dibuje paquetes para la categorización lógica de casos de uso en subsistemas relacionados.

Estructuración de casos de uso

UML define tres estereotipos de asociación entre casos de uso:

<<incluir>> Caso de uso

El momento de usar la relación <<include>> es después de haber completado la descripción del primer corte de todos sus casos de uso principales. Ahora puede ver los casos de uso e identificar secuencias comunes de interacción usuario-sistema.

<<extender>> Caso de uso

Un caso de uso extendido es, efectivamente, un curso alternativo del caso de uso base. El caso de uso <<extender>> logra esto mediante la inserción conceptual de secuencias de acción adicionales en la secuencia base del caso de uso.

Caso de uso abstracto y generalizado

El caso de uso general es abstracto. No se puede instanciar, ya que contiene información incompleta. El título de un caso de uso abstracto se muestra en cursiva.

Ejemplo

Este ejemplo muestra un modelo de varios casos de uso comercial (objetivos) que representan las interacciones entre un restaurante (el sistema comercial) y sus actores principales.

Después de que los casos de uso base hayan sido identificados en el primer corte, tal vez podríamos estructurar aún más esos casos de uso con <<extender>> e <<incluir>> casos de uso en la segunda ronda de retoque como se muestra en la Figura a continuación:


Caso de uso comercial

Un caso de uso comercial se describe en  terminología libre de tecnología  que trata el proceso comercial como una caja negra y describe el proceso comercial que utilizan sus actores comerciales, mientras que un caso de uso común normalmente se describe en el  nivel de funcionalidad del sistema  y especifica la función. o el servicio que el sistema brinda al usuario. En otras palabras, el caso de uso comercial representa cómo el trabajo se debe realizar manualmente en la situación actual y no necesariamente lo realiza el sistema o tiene la intención de automatizarse en el alcance del sistema de destino.


Cómo identificar a los actores

A menudo, a las personas les resulta más fácil iniciar el proceso de obtención de requisitos identificando a los actores. Las siguientes preguntas pueden ayudarlo a identificar a los actores de su sistema (Schneider y Winters — 1998):

  • ¿Quién usa el sistema?
  • ¿Quién instala el sistema?
  • ¿Quién pone en marcha el sistema?
  • ¿Quién mantiene el sistema?
  • ¿Quién cierra el sistema?
  • ¿Qué otros sistemas utilizan este sistema?
  • ¿Quién obtiene la información de este sistema?
  • ¿Quién proporciona información al sistema?
  • ¿Sucede algo automáticamente en un momento presente?

¿Cómo identificar casos de uso?

La identificación de los casos de uso, y luego el proceso de elicitación basado en escenarios continúa preguntando qué valor observable y visible externamente desea cada actor. Se pueden hacer las siguientes preguntas para identificar casos de uso, una vez que se hayan identificado los actores (Schneider y Winters, 1998):

  • ¿Qué funciones querrá el actor del sistema?
  • ¿El sistema almacena información? ¿Qué actores crearán, leerán, actualizarán o eliminarán esta información?
  • ¿El sistema necesita notificar a un actor sobre las posibilidades en el estado interno?
  • ¿Hay algún evento externo que el sistema deba conocer? ¿Qué actor informa al sistema de esos eventos?

Consejos para diagramas de casos de uso

Ahora, consulte los consejos a continuación para ver cómo aplicar el caso de uso de manera efectiva en su proyecto de software.

  • Estructure y organice siempre el diagrama de casos de uso desde la perspectiva de los actores.
  • Los casos de uso deben comenzar de manera simple y en la vista más alta posible. Solo entonces se pueden refinar y detallar aún más.
  • Los diagramas de casos de uso se basan en la funcionalidad y, por lo tanto, deben centrarse en el «qué» y no en el «cómo».

Caso de uso Niveles de detalles

La granularidad de los casos de uso se refiere a la forma en que se organiza la información dentro de las especificaciones de los casos de uso y, en cierta medida, al nivel de detalle con el que se escriben. Lograr el nivel correcto de granularidad de casos de uso facilita la comunicación entre las partes interesadas y los desarrolladores y mejora la planificación del proyecto.

Alastair Cockburn en  Escribir casos de uso efectivo  nos brinda una manera fácil de visualizar diferentes niveles de nivel de meta al pensar en términos del mar:

Tenga en cuenta que:

  • Si bien un caso de uso en sí mismo puede profundizar en muchos detalles sobre cada posibilidad, un diagrama de caso de uso a menudo se usa para una vista de nivel superior del sistema como planos.
  • Es beneficioso escribir casos de uso en un nivel más bajo de granularidad con menos detalles cuando no es necesario.

Espero que pueda responder «qué es el diagrama de casos de uso» ahora y pueda aplicar el caso de uso en su proyecto. Si desea obtener más información sobre otros tipos de diagramas UML, consulte la guía UML:  Descripción general de los 14 tipos de diagramas UML .

No basta con mostrar el diagrama de casos de uso en   notación UML . Cada caso de uso va acompañado de un texto que explica el propósito del caso de uso, así como la funcionalidad que se logra cuando se ejecuta un caso de uso.

La especificación del caso de uso generalmente se crea en la fase de análisis y diseño de manera iterativa.

  • Al principio, solo se escribe una breve descripción de los pasos necesarios para llevar a cabo el flujo normal del caso de uso (es decir, qué funcionalidad proporciona el caso de uso).
  • A medida que avanza el análisis, los pasos se desarrollan para agregar más detalles.
  • Finalmente, los flujos excepcionales se agregan al caso de uso.
  • Cada proyecto puede adoptar una plantilla de caso de uso estándar para la creación de la especificación de caso de uso.

Caso de uso frente a especificación de caso de uso

Un caso de uso describe una tarea realizada por un actor que produce un resultado de valor comercial para una empresa. Un caso de uso puede visualizarse como un diagrama de caso de uso y/o en formato de especificación textual estructurada:

El caso de uso (tarea que un cliente desea realizar) puede ser:

  • Interactivo: un caso de uso del sistema describe la interacción de un actor con un sistema en busca del objetivo empresarial definido.
  • Manual — Una secuencia de acciones realizadas por un actor
  • Automatizado: una secuencia de pasos realizados por un programa o script.

Características de los casos de uso

Un caso de uso tiene:

  • solo un gol
  • Un único punto de partida
  • Un único punto final
  • Múltiples caminos para ir de principio a fin
  • es decir, especificar el comportamiento para una variedad de condiciones posibles
  • Cada condición puede requerir acción(es) específica(s)

Por ejemplo, el cliente paga la factura:

Hay múltiples caminos para lograr el objetivo:

  • Pago telefónico
  • Por correo
  • En persona
  • por cheque
  • en efectivo, etc

Un camino que no conduce a la meta:

  • Se rechaza la tarjeta de crédito

Enfoque de caso de uso ágil

El modelo de caso de uso y sus casos de uso individuales evolucionan nivel por nivel a lo largo del tiempo. No todos los casos de uso de un modelo necesariamente deberán especificarse con el mismo nivel de detalle.

Justo a tiempo y justo lo suficiente

Los casos de uso se pueden escribir en diferentes niveles de datos y alcance, cada uno tiene un propósito:

  • Resumen: Descripciones generales y resúmenes amplios de la funcionalidad del sistema o los procesos comerciales.
  • Nivel de usuario: descripciones relacionadas con tareas de los usuarios y cómo interactúan con el sistema; descripciones de un proceso de negocio específico. Los casos de uso de nivel de usuario generalmente se consideran en el nivel de tarea que es el trabajo principal del usuario.
  • Subfunción: descripciones de actividades de nivel inferior que se utilizan para completar subpartes de un caso de uso central.

Nota: Algunos casos de uso pueden estar suficientemente especificados hasta el nivel II. Se detiene cuando se logra suficiente detalle utilizando el método justo a tiempo y justo lo suficiente.


Una especificación detallada del caso de uso

El caso de uso detallado es una representación textual que ilustra una secuencia de eventos junto con otra información relacionada con el caso de uso en un formato determinado. Las personas suelen adoptar una plantilla de caso de uso estándar para registrar la información detallada de los casos de uso.


Plantilla de caso de uso: ejemplo de caso de retiro de cajero automático

Como se mencionó anteriormente, hay varios estilos de notación para casos de uso (por ejemplo, estilo de diagrama, lenguaje de modelado unificado, formato textual). Cualquier notación que se utilice debe ser fácil de entender. Puedes usar plantillas, como las de  Alistair Cockburn , pero también es una opción usar lo que mejor se adapte a tu equipo.

Especificación de caso de uso — Paradigma visual
Especificación de caso de uso: ruta básica
Especificación de casos de uso: caminos alternativos
Especificación de casos de uso: reglas comerciales
Especificación de casos de uso: requisitos no funcionales

Cree diagramas de casos de uso simples

Si desea dibujar diagramas de casos casuales,  Visual Paradigm Online  será su mejor opción. Como es totalmente gratis para siempre, sin limitación, instalación y configuración cero.

También puede usar  Visual Paradigm Community Edition , también es gratis para crear casos de uso para varias plataformas.

Realizar modelado y análisis de casos de uso formales

Si desea realizar y desarrollar un modelo de caso de uso, se recomienda utilizar  la versión paga de Visual Paradigm,  que le permite desarrollar una especificación de caso de uso adecuada y completa, como se mencionó anteriormente.

Hágalo usted mismo ahora con  Visual Paradigm  Online

Pruébelo ahora y diviértase con todos estos ejemplos y plantillas listos para editar que se enumeran a continuación:

Sistema de radiodifusión

Cajero automático

Plantilla de estructuración de casos de uso

Estructuración de casos de uso con estereotipo

Expresión de varios proyectos mediante los límites del sistema

Sistema de examen en línea

Servicio de pasajeros

Gestión de desarrollo de software

Sistema de aparcamiento

Sistema de proceso de pedidos

Caso de uso de generalización

Incluir y ampliar casos de uso

Sitio web (Estructuración de casos de uso con extensión e inclusión de casos de uso)

Plantilla de diagrama de caso de uso

Sistema externo como actor

Cajero automático del banco

Dejar una contestacion

Tu dirección de correo electrónico no será publicada.