Está en la página 1de 38

Casos de uso

SAP - PAGISI

Casos de Uso

Ingeniera de Requisitos

La Ingeniera de Requisitos direcciona el proceso de


elicitacin, definicin, modelado, anlisis, especificacin y
validacin de los requisitos de un sistema y de su software,
basado en un enfoque sistemtico, separando el "qu" del
"cmo" del diseo.

Qu es un Requisito?

Flujo de trabajo fundamental cuyo proposito esencial es orientar el


desarrollo hacia el sistema correcto

Esto se lleva a cabo mediante la descripcion de los requisitos del


sistema de forma tal que se pueda llegar a un acuerdo entre el
cliente (usuario) y los desarrolladores del sistema, acerca de lo que el
sistema debe hacer y lo que no

El conjunto de todos los requisistos forman la base para el desarrollo


del sistema o el componente de sistema

Tipos de Requisitos

Funcionales: especifica una accin que debe ser capaz de


realizar el sistema, sin considerar restricciones fsicas

No funcionales: especifica restricciones fsicas sobre un


requisito funcional (rendimiento, plataforma, fiabilidad)

Requisitos y Casos de Uso

Los casos de uso son una tcnica para la especificacin de requisitos


funcionales propuesta inicialmente por Jacobson (1992)

Los casos de uso presentan una ventaja sobre la descripcin textual


de los requisitos funcionales

Los casos de uso son, ante todo, requisitos funcionales

A pesar de ser una tcnica ampliamente aceptada, existen mltiples


propuestas para su realizacin

Qu es un caso de uso?
Los casos de uso son una tcnica que se utiliza para documentar
los requerimientos funcionales de un sistema desde el punto de
vista de los usuarios

Los casos de uso responden a la pregunta: Qu se supone que el


sistema debe hacer para los usuarios?

Un caso de uso es un texto muy simple con cierto formato que


describe cmo se debera comportar un sistema ante la interaccin
con uno o ms usuarios
Los casos de uso no son orientados a objetos

Ventajas de los casos de uso

Los casos de uso sirven como una forma de comunicacin


entre personas de uno o varios equipos de trabajo,
estimulando la discusin acerca del comportamiento del
sistema en cuestin

Los casos de uso sirven, por su simpleza, para validar los


requerimientos directamente con los (futuros) usuarios del
sistema

Diagrama de Casos de Uso

<<extend>>

actor 2

caso de uso 2

caso de uso 1

<<include>>

actor 1

caso de uso 4

caso de uso 3

El valor de los casos de uso est en su descripcin


detallada (no en el dibujo)

Casos de Uso
Describe tanto lo que hace el actor como lo que hace el sistema
cuando interacta con l
Estn acotados al uso de una determinada funcionalidad, claramente
diferenciada, del sistema
Un caso de uso realiza cierto trabajo cuyo efecto es tangible para un
actor

Actor

caso de uso

Casos de Uso - actores


Un actor es alguien o algo que interacta con el sistema (una
persona, una organizacin, un programa o sistema de hardware o
software)
Un actor estimula al sistema con algn evento o recibe
informacin del sistema
Un actor es externo al sistema
Un actor cumple un rol definido (Ej.: Cliente, Banco, empleado)

Tipo de Actores
Actores primarios: utilizan las funciones principales del sistema
con un objetivo claro y propio. Los actores primarios son quienes
tienen la meta que cumple el caso de uso.
Actores secundarios: no tienen intencin de iniciar un caso de uso
pero participan de alguna forma en l de forma externa al sistema
para llevarlo a cabo. Los actores secundarios son quienes realizan
algo para cumplir esa meta a pedido del caso de uso.

Diagrama de Contexto
Permite determinar las fronteras del sistema

<< actor>>

0..1

TARJETA DE
CREDITO

0..*
secundario

Cliente
CVLI

<< actor>>

secundario
0..1

GESTOR
DE LIBROS

0..1
secundario

Administrador Sistema

0..1

<< actor>>
GESTOR
DE ENVIO

Cmo encontrar actores?

Una buena tcnica para encontrar posibles actores es


responder las siguientes preguntas:

Quin usa el sistema?


Quin instala o mantiene al sistema?
Qu otros sistemas utilizan al sistema?
Quin recibe informacin del sistema?
Quin le provee informacin al sistema?

Caso de uso y Escenarios


Un caso de uso no trivial describe un conjunto de secuencias, no una
nica secuencia. Es conveniente separar el flujo principal de los
flujos alternativos
Por ejemplo: el caso de uso Contratar Empleado podra tener variantes:
contratar externos (Escenario ms frecuente) , traslado dentro de la
misma empresa, contratar extranjeros. Cada una de estas variantes se
puede expresar en una secuencia diferente

Cada secuencia especfica del caso de uso se denomina Escenario


Un escenario es una secuencia especfica de acciones entre los
actores y el sistema (es una instancia de un caso de uso)

Caso de Uso - asociacin

Muestra la relacin entre los actores y los casos de uso


Los actores slo se pueden conectar a los casos de uso a travs de
asociaciones que indican que el actor y el caso de uso se
comunican entre s y que pueden enviar y recibir mensajes

El actor inicia la
comunicacin

El actor recibe la
comunicacin del caso
de uso

Relacin <<include>>
Una relacin de inclusin entre casos de uso especifica que un
caso de uso base incorpora explcitamente el
comportamiento de otro caso de uso en el lugar establecido
en el caso de uso base
Una relacin de inclusin se representa como una dependencia
Una dependencia es una relacin de uso que declara que un
caso de uso utiliza informacin y servicios de otro
<<include>>

Caso de Uso A

Caso de Uso B

El caso de uso A (caso de uso base) incluye en


su funcionalidad el caso uso B

Cundo se utiliza include?

Cuando un caso de uso incorpora explicitamente el comportamiento de otro


caso de uso
Para evitar repeticiones de descripcin de flujos de eventos
Cuando distintos casos de uso poseen un conjunto de eventos con la misma
funcionalidad, estos eventos se pueden factorizar en un nuevo caso de
uso, el cual se relacionar con los anteriores mediante la relacin de
inclusin
Cuando un caso de uso es muy extenso y difcil de leer

Se entiende que algunos de los pasos en una situacin dentro de un Caso de


Uso son los mismos que los de otro Caso de Uso, y en lugar de listar los
mismos pasos, tan slo indicamos el Caso de Uso de donde provienen

Relacin <<extend>>
Una relacin de extensin entre casos de uso especifica que un caso de
uso base incorpora implcitamente el comportamiento de otro caso
de uso en el lugar especificado por el caso de uso base que extiende.
Se representa mediante una dependencia
La funcionalidad de un caso de uso incluye un conjunto de pasos que
ocurren slo en algunas oportunidades
La excepcin consiste en interrumpir el caso de uso B y pasar a ejecutar
otro caso de uso A
<<extend>>

Caso de Uso B

Caso de Uso A

El caso de uso B (caso de uso base) incluye en


su funcionalidad (opcionalmente) el caso uso A

Relacin <<extend>>

En la relacin de extensin, existe un caso de uso base el cual puede ser


extendido por otro caso de uso
La extensin se realiza a partir de los puntos de extensin y ste caso de
uso es utilizado en esos puntos si se cumple una condicin
Se entiende que se agregan pasos a un Caso de Uso existente, y esto se hace
creando un nuevo Caso de Uso, que enriquece al existente, pero no lo
modifica.

Cundo se utiliza extend?


Se puede utilizar para:
Cuando se desea describir una variacin del comportamiento
normal de un caso de uso.
Para conjuntos de eventos que son ejecutados solamente en ciertos
casos.
Cuando la seccin de flujos alternativos de un caso de uso se torna
muy grande y difcil de leer, es conveniente crear nuevos casos
de usos a partir de estos flujos alternativos que extiendan al
caso de uso original.

Ejemplo/1

El caso de uso que


extiende, nombra al
caso de uso base,
nombra a el o a los
puntos de extensin e
incluye la condicin que
determina si se toma o
no la extensin.

Caso de uso
base

caso de uso
que extiende

Ejemplo/2

Caso de uso
base

Caso de uso PROCESAR VENTA


Punto de extensin: pago, paso 7
Escenario principal
1.
.
.
7.

el cliente llega al puesto de venta con mercaderas para comprar


El cliente paga y gestiona el pago

Puntos de
extensin

Caso de uso PAGO CON VALE REGALO


Condicin: el cliente quiere pagar con vale regalo
Puntos de extensin: pago en PROCESAR VENTA
Escenario principal
1. el cliente le da el vale regalo al cajero
2.

Caso de Uso
que extiende
condicin

Pre y Post Condiciones

Pre condiciones: establece lo que siempre debe cumplirse antes


de comenzar un caso de uso. No se prueban en el caso de uso,
se asumen que son verdaderas
Post condiciones: establece qu debe cumplirse cuando el caso
de uso se completa con xito

Plantilla de caso de uso y descripcin

Describe
el
nombre
y
la
organizacin
de
los
autores
(normalmente desarrolladores)

Para poder gestionar distintas


versiones, contiene el nmero y la
fecha de la versin actual del caso
de uso.
Describe el estado desde el punto de
vista de su desarrollo. El objetivo
puede estar en construccin si se
est elaborando, pendiente de
negociacin si tiene algn conflicto
asociado pendiente de solucin,
pendiente de verificacin si no
tiene ningn conflicto pendiente y
est a la espera de verificacin o,
pendiente de validacin si ya ha
sido verificado y est a la espera de
validacin o por ltimo, puede estar
validado si ya ha sido validado por
clientes y usuarios.

CODIGO Y
NOMBRE:
AUTOR:
VERSION:
ESTADO:
DESCRIPCION :
ACTOR PRINCIPAL:
ACTOR SECUNDARIO:
PRECONDICIONES:
PUNTO DE EXTENSION:
CONDICION:
ESCENARIO PRINCIPAL:

Contiene la secuencia normal de


interacciones del caso de uso

Especifica el comportamiento del


sistema en el caso de que se
produzca
alguna
situacin
excepcional durante la realizacin
de un paso determinado.

FLUJO ALTERNATIVO:

POSTCONDICIONES:

El caso de uso debe identificarse por


un cdigo nico y un nombre
descriptivo, con objeto de conseguir
una rpida identificacin

Describe sintticamente las


caractersticas principales del
caso de uso
Se describen los actores que
utilizan las funciones principales
del sistema
Se describen los actores que
efectan tareas administrativas o de
mantenimiento
Establece lo que siempre debe
cumplirse antes de comenzar un
caso de uso. No se prueban en el
caso de uso, se asumen que son
verdaderas
Describe el lugar especifico en la
secuencia del caso de uso en el
escenario principal donde puede ser
extendido el caso de uso
Establece la condicin que
debe ser cumplida en el caso
de uso para que sea extendido

establece qu debe
cumplirse cuando el caso de
uso se completa con xito

Los Casos de uso y las fases en el UP

En la fase de inicio se
reconocen las mayora de los
casos de uso, pero no su
descripcin detallada

En la fase de elaboracin, se
refinan en las sucesivas
iteraciones

En la fase de construccin, se
escriben casos de uso menores

En la fase de transicin, no se
describen casos de uso

Comenzamos con el caso prctico...

Compaa de Ventas de Libros por Internet (CVLI)


(Descripcin sinttica del Sistema)

El cliente accede a la informacin sobre los libros a travs de la


Web
El cliente elegir un nombre de usuario y una clave como mtodo
de autentificacin para efectuar las transacciones
El cliente podr realizar bsquedas por autor, ttulo o ISBN
El cliente debe estar previamente registrado
El cliente puede establecer preferencias de envo
El cliente puede introducir opciones de empaquetado
La librera deber recoger los datos de los pedidos
La librera deber rearmar en uno nico los pedidos aislados que
estn dentro del plazo de 90 minutos
La empresa puede realizar envos parciales en funcin de la
disponibilidad de los tems

Identificacin de los actores

Cliente (primario)
Administrador del sistema (primario)
Tarjeta de crdito (secundario)
Gestor de libros (secundario)
Gestor de envo (secundario)

Identificacin de los Casos de Uso


Cliente
Registrarse al sistema
Consultar libro
Comprar libro
Establecer preferencias de envo y empaquetado

Administrador del sistema


Armar pedidos
Rearmar pedidos

Diagrama de Casos de Uso

Registrarse al sistema

Gestor de Libros

Consultar libro
Tarjeta de Credito
Cliente
Comprar libro

Establecer preferencias
de envo y empaquetado

Armar pedidos

Rearmar pedidos

Administrador del
Sistema

Descripcin general de Registrarse al sistema

CODIGO Y
CU01 - Registrarse al sistema
NOMBRE:
AUTOR:
Carlos Neil
VERSION:
1.0 11-may-2011
ESTADO:
En construccin
DESCRIPCION : el cliente, antes de realizar una primera transaccin de
compra o bsqueda de libros, debe introducir todos sus datos por nica
vez, los cuales sern guardados por el sistema y ste le ofrecer la
posibilidad de tener una clave y contrasea que utilizar para cada
transaccin que realice posteriormente, el cliente tendr la posibilidad de
hacer cambios en los datos introducidos, incluso en su clave y contrasea
ACTOR PRINCIPAL: cliente
ACTOR SECUNDARIO: tarjeta de crdito

Descripcin general de Consultar libro

CODIGO Y
CU02 - Consultar libro
NOMBRE:
AUTOR:
Carlos Neil
VERSION:
1.0 11-may-2011
ESTADO:
En construccin
DESCRIPCION : el cliente, una vez ingresado al sistema, podr navegar por el
mismo en bsqueda de libros, novedades, ofertas, etc
ACTOR PRINCIPAL: cliente
ACTOR SECUNDARIO: gestor de libros

Descripcin general de Comprar libro

CODIGO Y
CU03 - Comprar libro
NOMBRE:
AUTOR:
Carlos Neil
VERSION:
1.0 11-may-2011
ESTADO:
En construccin
DESCRIPCION : el cliente, una vez ingresado al sistema, podr realizar
compras de libros, eligindolo de una lista ofrecida por la empresa, cada
libro elegido, se sumar a una carrito de compra, etc. El cliente informar el
nmero y tipo de tarjeta de crdito para realizar el pago. Deber especificar
direccin de envi y forma de pago
ACTOR PRINCIPAL: cliente
ACTOR SECUNDARIO: gestor de libros, tarjeta de crdito

Desarrollo
de un Caso
de Uso

CODIGO Y NOMBRE:

CU04 - Registrarse al sistema

AUTOR:

Carlos Neil

VERSION:

1.0 11-may-2011

ESTADO:

En construccin

DESCRIPCION: : el cliente, antes de realizar una primera transaccin de compra o bsqueda de libros, debe introducir todos
sus datos por nica vez, los cuales sern guardados por el sistema y ste le ofrecer la posibilidad de tener una clave y
contrasea que utilizar para cada transaccin que realice posteriormente, el cliente tendr la posibilidad de hacer cambios en
los datos introducidos, incluso en su clave y contrasea
ACTOR PRINCIPAL: cliente
ACTOR SECUNDARIO: tarjeta de crdito
PRECONDICIONES: el cliente ingresa al sistema por primera vez
PUNTO DE EXTENSION:
CONDICION:
ESCENARIO PRINCIPAL:
1.
El cliente ingresa a la pagina Web de CVLI
2.
El cliente ingresa a la opcin registracin
3.
El sistema solicita ingreso de los datos personales: nombre y apellidos, direccin, localidad, cdigo postal, pas
4.
El cliente ingresa los datos personales
5.
El sistema evala el pas de origen y solicita ingreso de los datos de la tarjeta de crdito: tipo de tarjeta, nmero,
fecha lmite de validez
6.
El cliente ingresa datos de la tarjeta de crdito
7.
El sistema chequea el nmero de la tarjeta de crdito
8.
El sistema (teniendo en cuenta el pas de origen) solicita la opcin de preferencia de envo por omisin, esta
opcin puede modificarse en cada envo
9.
El cliente ingresa preferencia de envo
10.
El sistema solicita, para finalizar, el ingreso de la clave de acceso y la contrasea
11.
El cliente ingresa clave y contrasea
12.
El sistema solicita reingreso de contrasea
13.
El cliente reingresa contrasea
14.
El sistema informa que la transaccin se realizo correctamente

POSTCONDICIONES: el cliente est registrado en el sistema

Sugerencias

Utilice la plantilla modelo de casos de uso. Ayuda a entender las


partes componentes

Recuerde que los casos de uso son texto, el grfico slo nos
brinda una visin general

Piense al caso de uso como una comunicacin entre el actor y el


sistema (no en cmo resolver el sistema el problema planteado)

Los flujos alternativos pueden ser errores o excepciones (no


relaciones de extensin)

Utilice las relaciones de extensin e inclusin en una etapa


posterior de refinamiento. Al principio cntrese en comprender
bien el caso de uso

Describa el flujo de eventos lo suficientemente claro para que


alguien externo al sistema lo pueda entender

Ample la funcionalidad del caso de uso en cada iteracin del


proceso de desarrollo

Fin