Вы находитесь на странице: 1из 34

Casos de Uso

Horacio Jesus Tacubeño Cruz


Casos de Uso
• El caso de uso es un documento narrativo que describe la
secuencia de eventos de un actor (agente externo) que
utiliza un sistema para completar un proceso [Jacob-son92].

• Los casos de uso son historias o casos de utilización de un


sistema; no son exactamente los requerimientos ni las
especificaciones funcionales, sino que ejemplifican e
incluyen tácitamente los requerimientos en las historias que
narran.
Horacio Jesus Tacubeño Cruz
Diagramas de casos de uso
• Representan las funciones del sistema desde el punto de vista del
usuario.

Horacio Jesus Tacubeño Cruz


Identificar y clasificar requisitos
Deberemos responder a los siguientes cuestionamientos:
¿Que le permitirá hacer, el sistema de software, al usuario?
¿El cliente o usuario me solicita alguna restricción para
construir el sistema de software?
Contestando a esas preguntas se deberá realizar una lista que
contendrá los requisitos del sistema.

Horacio Jesus Tacubeño Cruz


Identificar y clasificar requisitos
Requisitos funcionales Requisitos No funcionales
1. El sistema permitirá registrar los 3. La interfaz de usuario del
clientes de la empresa. sistema se implementará sobre un
2. El sistema permitirá a los navegador Web
usuarios realizar una búsqueda de 4. El sistema deberá soportar al
los clientes por DNI, nombre o menos 20 transacciones por
apellido. segundo
5. El sistema permitirá que los
nuevos usuarios se familiaricen
con su uso en menos de 15
minutos.
Horacio Jesus Tacubeño Cruz
Identificar actores
• Para encontrar actores del sistema se puede buscar en las
categorías de personas, otro software, dispositivos de
hardware o redes de computadoras.

• Ejemplo en un sistema contable podría ser el contador, en


una biblioteca el bibliotecario.

Horacio Jesus Tacubeño Cruz


Identificar escenarios.

Según Bmegge [BRU02] “es una descripción concreta,


enfocada e informal de una sola característica del sistema
desde el punto de vista de un solo actor”; es decir, un
escenario muestra la secuencia de pasos que se produce
cuando un actor interactúa con el sistema en una situación
específica y un tiempo determinado.

Horacio Jesus Tacubeño Cruz


Identificar escenarios.

• Un ejemplo de escenario para un sistema de biblioteca es el


siguiente: “Juan Pérez se conecta al sistema de la Biblioteca
Nacional a través de Internet. Juan Pérez selecciona realizar
búsqueda y cuando aparece el formulario inglesa en título de
libros la frase ‘especificación de requisitos’. El sistema
encuentra un único libro y lo muestra.

Horacio Jesus Tacubeño Cruz


Identificar casos de uso.
La diferencia entre escenarios y casos de uso radica en que un
escenario es una instancia de un caso de uso [BRU02], El caso
de uso es el que especifica todos los escenarios posibles para
una parte de funcionalidad dada; es decir, todos los
escenarios similares se agrupan en un solo caso de uso.

• Ejemplo: En el sistema de biblioteca cuando el bibliotecario


presta un libro a un estudiante y se puede llamar como
“préstamo de libro”.

Horacio Jesus Tacubeño Cruz


Especificar de casos de uso
• Luego de haber identificado los casos de uso, se tienen que
indicar, detalladamente, la forma la que el actor interactúa
con el sistema.

• Esto se determina mediante la especificación documentación


de cada caso de uso.

Horacio Jesus Tacubeño Cruz


Especificar de casos de uso
1. Precondiciones, señalan los estados en que debe estar el
sistema para que se pueda ejecutar el caso de uso.
2. Flujo básico, secuencia de pasos que se va a producir en la
mayoría de las veces en que ese caso de uso se ejecute.
3. Flujos alternativos, que contienen las secuencias de pasos
que se producirán como alternativas al flujo básico del caso
de uso; es decir, especifican los pasos que se producirán en
situaciones excepcionales.
4. Postcondiciones, que señalan el estado en que el sistema
quedará luego de haberse ejecutado el caso de uso.
Horacio Jesus Tacubeño Cruz
Identificar relaciones entre casos de uso
(opcional).
• En esta actividad se identifican, en base a las
especificaciones de casos de uso, las relaciones “include”,
“extends” y “generalization” entre casos de uso.
• Es importante resaltar que esta actividad es opcional.

Horacio Jesus Tacubeño Cruz


Los sistemas y sus fronteras
Un caso de uso describe la interacción con un “sistema”. Las
fronteras ordinarias del sistema son:
La frontera hardware/software de un dispositivo o
sistema de computo
El departamento de una organización
La organización entera

Horacio Jesus Tacubeño Cruz


Comunicación – Relación “asociación”
• Asociación: Indica que un actor forma parte de un caso de uso. Los
casos de uso están asociados a los actores que los realizan

Horacio Jesus Tacubeño Cruz


Include “incluir”
Incluir: Un caso de uso de inclusión llama o invoca al caso de
uso incluido. La inclusión se usa para mostrar cómo se divide
un caso de uso en pasos más pequeños. El caso de uso
incluido se encuentra en el extremo con la punta de flecha.
Estamos diciendo que el primero (el caso de uso base) incluye
al segundo (el caso de uso incluido).
Es decir, el segundo es parte esencial del primero.
Sin el segundo, el primero no podría funcionar bien; pues no
podría cumplir su objetivo.

Horacio Jesus Tacubeño Cruz


Include
Ejemplo:
Para una venta en caja, la venta no puede considerarse completa si no
se realiza el proceso para cobrarla en ese momento. El caso de uso
“Cobrar Renta” está incluido en el caso de uso “Rentar Video”, o lo que
es lo mismo “Rentar Video” incluye (<<include>>) “Cobrar Renta”.

Horacio Jesus Tacubeño Cruz


Extend “Ampliar”
• Ampliar: Un caso de uso de extensión agrega objetivos y pasos al
caso de uso extendido. Las extensiones solamente funcionan en
ciertas condiciones. El caso de uso extendido se encuentra en el
extremo con la punta de flecha.
• Una de las diferencias básicas es que en el caso del “extend” hay
situaciones en que el caso de uso de extensión no es indispensable
que ocurra, y cuando lo hace ofrece un valor extra (extiende) al
objetivo original del caso de uso base.

Horacio Jesus Tacubeño Cruz


Extend “Ampliar”
Ejemplo: Puedes “Realizar Venta” sin “Acumular Puntos de Cliente fiel”,
cuando no eres un “cliente fiel”.
Pero, si eres un “cliente fiel” sí acumularás puntos. Por lo tanto,
“Acumular Puntos” es una extensión de “Realizar Venta” y sólo se
ejecuta para cierto tipo de ventas, no para todas.

Horacio Jesus Tacubeño Cruz


Generalización (Herencia)
Relaciona un elemento especializado y un elemento
generalizado. El elemento generalizado se encuentra en el
extremo con la punta de flecha.
• Un caso de uso especializado hereda los objetivos y actores
de su generalización y puede agregar objetivos más
específicos y los pasos para llevarlos a cabo.
• Un actor especializado hereda los casos de uso, los atributos
y las asociaciones de su generalización y puede agregar más
elementos.

Horacio Jesus Tacubeño Cruz


Generalización de Actores. (Herencia)
• .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.

Horacio Jesus Tacubeño Cruz


Generalización Casos de Uso (Herencia)
• Un caso de uso (subcaso) hereda el comportamiento y
significado de otro (relaciones de comunicación, inclusión,
extensión) super caso de uso.
• Los casos de uso “hijo” son una especialización del caso de uso
padre. (Evite en lo posible esto para no producir confusión).
• La generalización de un caso de uso especializado es un
mecanismo de lograr los objetivos expresados por otro caso de
uso general.

Horacio Jesus Tacubeño Cruz


Dependencia
Dependencia: Indica que el diseño del origen depende del diseño del
destino
Puede usar diferentes límites de subsistema para mostrar distintas
versiones del sistema. Por ejemplo, el caso de uso “Pagar” podría estar
incluido en la versión 2 del sitio web, pero no en la versión 1.
Esto significa que el sistema ayuda a los clientes a realizar sus pedidos.
Sin embargo, los clientes tienen que pagar
al restaurante directamente.
Use las relaciones de Dependencia
para vincular subsistemas que representan
variantes o versiones diferentes.
Horacio Jesus Tacubeño Cruz
Artefacto
Un artefacto proporciona un vínculo a otro diagrama o
documento y se crea arrastrando un archivo desde el
Explorador de soluciones.

Horacio Jesus Tacubeño Cruz


Paquetes

• Los casos de uso, actores y subsistemas pueden incluirse dentro de


paquetes. No es necesario introducir a los actores y subsistemas dentro de
los paquetes, ya que VS ya crea el paquete desde inicio y por default.

Horacio Jesus Tacubeño Cruz


Reúso: Evitando el trabajo doble
• Una de las razones por las cuales deberías de considerar el
uso de este tipo de relaciones, es porque identificas que hay
pasos que son iguales en dos o más casos de uso.

Horacio Jesus Tacubeño Cruz


Errores en CU

Horacio Jesus Tacubeño Cruz


Error.. Identificación de actores
No identificar quienes son los actores del sistema.

Ejemplo : En un sistema en el que se realizan pedidos de productos, se


considera al cliente como un actor
Realmente quien ingresa los pedidos en el sistema es el vendedor y no
el cliente, por lo tanto el vendedor sería el actor del sistema.

Horacio Jesus Tacubeño Cruz


Error. Identificación de caso de uso
• Considerar las opciones del menú o fundones del sistema como casos
de uso

Horacio Jesus Tacubeño Cruz


Errores. En el uso de relaciones entre CU
• Confundir los casos de uso con los procesos de los diagramas de flujo
de datos (DFD)

Horacio Jesus Tacubeño Cruz


Casos de Abuso
• Uno de los riesgos que existe cuando la gente sabe que tiene estas
relaciones como un elemento a utilizar en sus modelos de caso de uso,
consiste en su abuso.
• No es raro ver modelos de casos de uso que llegan a tener decenas de
inclusiones y extensiones, incluso las inclusiones y extensiones se vuelven a
extender a varios niveles, generando una maraña de casos de uso que no
ofrecen valor al ser mostrados explícitamente.

Horacio Jesus Tacubeño Cruz


Relaciones de Análisis o Diseño
Otra situación donde abusamos de estas relaciones se da
cuando queremos representar la unión de casos de uso por
una decisión de diseño del sistema, específicamente por una
decisión de navegabilidad entre funciones.

Horacio Jesus Tacubeño Cruz


Error. Relaciones de Análisis o Diseño
Ejemplo “Registrar Préstamo de un Video”. En dicho caso de uso tienes a la
vista en la pantalla, y decides utilizar, un botón que te permitiría iniciar otro
caso de uso que tiene poco o nada que ver con el objetivo del caso de uso
inicial (digamos, “Consultar Promociones”.
Esto no debería de mostrarse como una relación entre estos dos casos de uso
en el modelo.
No deberíamos modelar al primer caso de uso incluyendo ni siendo
extendido con el segundo caso de uso ni viceversa, pues la razón por la que
se ligaron (en su ejecución) fue por una facilidad otorgada por la manera en
que se diseño el sistema, la cual permite navegar fácilmente entre las
diferentes funciones del sistema.

Horacio Jesus Tacubeño Cruz


Error. Relaciones de Análisis o Diseño
La técnica de casos de uso se debe utilizar para la especificación de
requisitos del sistema, mas no para el diseño del sistema
Algunos errores que se comenten:
Introducir palabras que se refieran a componentes de ventanas como:
botones, listas desplegables. opciones de menú. etc. En la especificación de
casos de uso debe incluirse la información que será ingresada o será
mostrada, pero no qué componente de la ventana.
Mencionar elementos correspondientes al diseño de algoritmos o de base
de datos en la especificación de casos de uso:

Ejemplo: "grabar en la tabla clientes” u “ordena los datos” son oraciones


que no deben incluirse en una especificación; ya que son elementos que se
determinan en la etapa de diseño.

Horacio Jesus Tacubeño Cruz


Bibliografía
• http://www.milestone.com.mx/articulos/casos_a_incluir_casos_a_ex
tender.htm
• https://synergix.wordpress.com/2008/08/25/casos-de-uso-herencia-
de-actores/
• https://msdn.microsoft.com/es-MX/library/dd409432.aspx
• http://www.seas.es/blog/informatica/tipos-de-relaciones-en-
diagramas-de-casos-de-uso-uml/
• UML Y PATRONES: INTRODUCCION AL ANALISIS Y DISEÑO ORIENTADO
A OBJTOS. ISBN 9789701702611. CRAIG LARMAN

Horacio Jesus Tacubeño Cruz

Вам также может понравиться