Documentos de Académico
Documentos de Profesional
Documentos de Cultura
UML: Instrucciones
Visual Studio 2015
Otras versiones
Para obtener la documentación más reciente de Visual Studio 2017, consulte Documentación de
Visual Studio 2017.
En Visual Studio, puede dibujar un diagrama de casos de uso donde se resuma quién usa la
aplicación o sistema, y qué pueden hacer. Para crear un diagrama de casos de uso UML, vaya al
menú Arquitectura y haga clic en Nuevo diagrama de capas o UML.
Si desea una demostración, vea el vídeo sobre la organización de características en casos de uso.
Para ver las versiones de Visual Studio compatibles con esta característica, vea Compatibilidad de
versiones con las herramientas de arquitectura y modelado.
Con la ayuda de un diagrama de casos de uso, puede analizar y comunicar:
Los escenarios en los que el sistema o aplicación interactúa con personas, organizaciones o
sistemas externos.
Los objetivos que el sistema o aplicación contribuye a lograr.
El ámbito del sistema.
En un diagrama de casos de uso no se muestran los casos de uso en detalle; solamente se resumen
algunas de las relaciones entre los casos de uso, los actores y los sistemas. En concreto, en el
diagrama no se muestra el orden en que se llevan a cabo los pasos para lograr los objetivos de cada
caso de uso. Esos detalles pueden describirse en otros diagramas y documentos, que pueden
vincularse a cada caso de uso. Para obtener más información, vea en este tema la sección Describir
los casos de uso en detalle.
En las descripciones que se proporcionen de los casos de uso se usarán diversos términos
relacionados con el dominio en el que trabaja el sistema, como Ventas, Menú, Cliente, etc. Es
importante definir de manera clara estos términos y sus relaciones y, para ello, puede resultar útil un
diagrama de clases de UML. Para obtener más información, vea Diagramas de clases de UML:
Instrucciones.
Los casos de uso solamente se usan para los requisitos funcionales de un sistema. Otros requisitos,
como las reglas de negocio, los requisitos de calidad del servicio y las restricciones de
implementación, deben representarse por separado. La arquitectura y los detalles internos también
deben describirse por separado. Para obtener más información sobre cómo definir los requisitos de
usuario, vea Requisitos del usuario de modelos.
Los ejemplos que se usan en este tema están relacionados con un sitio web en el que los clientes
pueden hacer pedidos de comida de restaurantes locales.
Un actor (1) es una clase de persona, organización, dispositivo o componente de software
externo que interactúa con el sistema. Los actores del ejemplo son cliente, restaurante,
sensor de temperatura y titular de tarjeta de crédito.
Un caso de uso (2) representa las acciones que uno o varios de los actores realizan a fin de
conseguir un objetivo determinado. Los casos de uso del ejemplo son “Pedir menú”,
“Actualizar menú” y “Procesar pago”.
En un diagrama de casos de uso, casos de uso están asociados (3) a los actores que los
realizan.
El sistema (4) es aquello que se está desarrollando. Puede ser un pequeño componente de
software cuyos actores simplemente son otros componentes de software; puede ser una
aplicación completa; o puede ser un gran conjunto de aplicaciones distribuidas que se
implementan en muchos equipos y dispositivos. Los subsistemas del ejemplo son “Sitio web
de pedidos de menú”, “Empresa de entrega de menús” y “Versión 2 del sitio web”.
En un diagrama de casos de uso pueden mostrarse los casos de uso que el sistema o sus
subsistemas admiten.
En este tema
Pasos básicos para dibujar diagramas de casos de uso
Dibujar actores y casos de uso
Describir los casos de uso en detalle
Estructurar casos de uso
Usar límites de subsistema
Nota
En Editar modelos y diagramas UML se describen en detalle los pasos para crear
diagramas de modelado.
Para crear un nuevo diagrama de casos de uso
1. En el menú Arquitectura, haga clic en Nuevo diagrama UML o de capas.
2. En Plantillas, haga clic en UML Diagrama de casos de uso.
3. Especifique un nombre para el diagrama.
4. En Agregar a proyecto de modelado, seleccione un proyecto de modelado existente en la
solución o Crear nuevo proyecto de modelado y, a continuación, haga clic en Aceptar.
Para dibujar un diagrama de casos de uso
1. Arrastre los límites de subsistema desde el cuadro de herramientas al diagrama para
representar el sistema completo o sus principales componentes.
o Si no desea describir los casos de uso que el sistema o sus componentes admiten,
puede dibujar un diagrama de casos de uso sin límites de sistema.
o Si es necesario, arrastre la esquina de un sistema para hacerlo más grande.
o Cambie su nombre como corresponda.
2. Arrastre los Actores desde el cuadro de herramientas al diagrama (sitúelos fuera de los
límites de sistema).
o Los actores representan las clases de usuarios, organizaciones y sistemas externos
que interactúan con el sistema.
o Cámbieles el nombre. Por ejemplo: cliente, restaurante, entidad de tarjeta de
crédito.
3. Arrastre los Casos de uso desde el cuadro de herramientas a los sistemas adecuados.
o Los casos de uso representan las actividades que los actores realizan con la ayuda
del sistema.
o Asígneles títulos que los propios actores puedan reconocer. No use títulos que
tengan relación con el código. Por ejemplo: “Pedir menú”, “Pagar menú” o
“Entregar menú”.
o Comience con las transacciones principales, como “Pedir menú”, y posponga para
más adelante las transacciones más pequeñas, como “Elegir elemento del menú”.
o Sitúe cada caso de uso en el sistema o el subsistema principal compatible (omita
los elementos de fachada o los componentes que solamente están implicados en la
conexión con el usuario).
o Puede dibujar un caso de uso fuera del límite de sistema para mostrar que dicho
caso de uso no es compatible con el sistema en una determinada versión.
4. En el cuadro de herramientas, haga clic en Asociación, luego en un caso de uso y después
en un actor que participe en el caso de uso. Vincule los actores con sus casos de uso de la
misma manera.
5. Estructure los casos de uso con las relaciones Incluir, Extender y Generalización. Para
crear cada uno de estos vínculos, haga clic en la herramienta, luego en el caso de uso de
origen y por último en el destino. Vea más adelante la sección titulada Estructurar casos de
uso.
6. Describa los casos de uso con más detalle. Vea más adelante la sección titulada Describir los
casos de uso en detalle.
7. Dibuje otros diagramas para hacer hincapié en diferentes subsistemas o grupos de casos de
uso relacionados. Todos los diagramas de un proyecto de modelado son vistas del mismo
modelo.
Puede dibujar un vínculo de Generalización entre actores. El actor especializado (“Cliente de club”
en el ejemplo) hereda los casos de uso del actor general (“Cliente” en el ejemplo). La punta de
flecha debe apuntar al actor más general, como “Cliente”. Cuando cree el vínculo, apunte primero al
actor más especializado.
El actor especializado puede tener otros casos de uso propios que no están disponibles para el
resto de actores.
Precaución
Nota
Para indicar que varios actores de la misma clase pueden participar en una única instancia
de un caso de uso, establezca la multiplicidad del extremo del actor de la asociación en 1..*.
En la ilustración, uno o varios restaurantes pueden participar en la elaboración del mismo
pedido de menú.
Para mostrar que cada actor puede participar al mismo tiempo en varias instancias de un
caso de uso, establezca la multiplicidad del extremo del caso de uso de la asociación en *.
En la ilustración, cada restaurante puede trabajar en la realización de más de un pedido a la
vez.
Para establecer las multiplicidades de una asociación
1. Haga clic con el botón derecho en la asociación y, a continuación, haga clic
en Propiedades.
2. Expanda el Primer rol o el Segundo rol.
Rol hace referencia al elemento de un extremo de la asociación.
3. Elija en la lista uno de los valores siguientes para la propiedad de multiplicidad:
o 1 para indicar que exactamente una instancia de este rol participa en cada vínculo.
o 1..* para indicar que una o varias instancias de este rol participan en cada vínculo.
o 0..1 para indicar que la participación es opcional.
o * para indicar que cero o más instancias de este rol participan en el vínculo.
Nota
Nota
Haga doble clic en un artefacto para abrir el diagrama o documento al que está
vinculado.
El objetivo y los escenarios de un caso de uso incluido deben tener sentido por sí mismos, de modo
que puedan incluirse en casos de uso que se diseñen posteriormente.
La descomposición de los casos de uso en elementos incluyentes y elementos incluidos resulta útil
para lograr los siguientes objetivos:
Estructurar las descripciones del caso de uso en diferentes niveles de detalle.
Evitar repetir escenarios compartidos en distintos casos de uso.
Definir el orden de los pasos detallados
En el diagrama de casos de uso no aparece ninguna información sobre el orden en que deben
realizarse los pasos más detallados, ni sobre si son siempre todos necesarios.
Si desea especificar con claridad el orden de los pasos, puede usar un artefacto para asociar un
documento independiente al caso de uso incluyente. En el ejemplo siguiente, se muestra un
diagrama de actividades asociado al caso de uso “Pedir un menú”. Si lo desea, también puede usar
un documento de texto que contenga una lista de pasos o una secuencia de capturas de pantalla.
Para obtener más información, vea Describir los casos de uso en detalle.
Tenga en cuenta estas convenciones de nomenclatura cuando use un diagrama de actividades:
El nombre de la actividad global es el mismo que el caso de uso incluyente.
Las acciones del diagrama de actividades tienen los mismos nombres que los casos de uso
incluidos.
Para obtener más información, vea Diagramas de actividades UML: Instrucciones.
Compartir los objetivos con la relación de generalización
Use una relación de generalización para mostrar que un caso de uso especializado es un mecanismo
específico de lograr los objetivos expresados por otro caso de uso general. La punta de flecha
abierta debe apuntar al caso de uso más general.
Por ejemplo, “Pagar” es una generalización de “Pagar con tarjeta de crédito” y “Pagar en efectivo”.
Precaución
No genere bucles de relaciones de generalización en los que, como resultado, un actor se
generalice a sí mismo. Los bucles pueden producir errores.
Los casos de uso especializados pueden ayudarle a representar mecanismos distintos a través de los
cuales el sistema puede conseguir el mismo objetivo.
Se supone que los casos de uso especializados heredan los objetivos y los actores del caso de uso
general. El caso de uso general no tiene que tener escenarios propios; en sus especializaciones se
describen diferentes mecanismos para conseguir los objetivos.
Para refactorizar los objetivos comunes de dos o más casos de uso
1. Cree el nuevo caso de uso general y asígnele un nombre.
2. Cree una relación de Generalización con la gran flecha apuntando al nuevo caso de uso
general.
a. En el cuadro de herramientas, haga clic en Generalización.
b. Haga clic en un caso de uso especializado (“Pagar con tarjeta de crédito” en el
ejemplo).
c. Haga clic en el caso de uso general (“Pagar” en el ejemplo).
3. Si ha descrito los objetivos de los casos de uso especializados, transfiera las partes comunes
a la descripción del caso de uso general.
4. Los actores que se comparten entre los casos de uso especializados pueden transferirse al
caso de uso general.
Descomponer las variaciones de casos con la relación de extensión
Use un vínculo de extensión para mostrar que, en determinadas circunstancias, un caso de uso
puede agregar funcionalidad a otro caso de uso. La flecha debe apuntar al caso de uso principal
extendido.
Precaución
Nota
Evite crear un bucle de relaciones de extensión en el diagrama. No es
correcto que un caso de uso sea una extensión de sí mismo.
3. Si ya ha creado los escenarios del caso de uso extendido, transfiera los pasos pertinentes al
escenario de la extensión.
4. La descripción de la extensión (“Registrar nuevo usuario” en el ejemplo) debe incluir los
detalles sobre el lugar de los escenarios de caso de uso principales en que va a producirse y
en qué circunstancias. Debe concebirse como una modificación de la descripción del caso
principal.
El caso de uso de extensión representa los pasos del escenario que, de otro modo, formarían parte
de los escenarios del caso de uso principal. El escenario y el objetivo de la extensión siempre se
interpretarán en el contexto del caso de uso principal y, por tanto, no es necesario que resulten
útiles por separado.
Descomponer las extensiones puede resultar útil para describir estas situaciones:
Hay actores adicionales que solamente están implicados en el caso de uso de extensión. Por
ejemplo, es necesario que un administrador apruebe el registro de un cliente en el sitio
web.
Un subsistema independiente se ocupará del caso de uso de extensión.
Esta extensión tan solo estará disponible en versiones específicas del sistema. Puede
mostrar cada versión como un subsistema independiente en el diagrama de casos de uso.
Nota
La propiedad Asuntos de un caso de uso indica qué subsistema es el que está incluido.