Está en la página 1de 45

1

Casos de Uso
Diagramas de Casos de Uso
Universidad de los Andes
Demin Gutierrez
Abril 2011
2
Casos de Uso
(Qu es un caso de uso?)
Caso de Uso?
3
Casos de Uso
(Qu es un caso de uso?)
Caso de Uso: Es una descripcin de un proceso fin-
a-fin, relativamente largo, ue inclu!e varias etapas
o transacciones
Un caso de uso es un conjunto de escenarios ue
tienen una meta de usuario en com"n
Martin Fowler
Es una manera especfica de utilizar el sistema, es
una #istoria ue describe un uso particular del
sistema
Es la imagen de una $uncionalidad del sistema,
desencadenada en respuesta al est%mulo de un
actor o rol e&terno
4
Casos de Uso
(Qu es un caso de uso?)
Escenario?
5
Casos de Uso
(Qu es un escenari o?)
Escenario: Es una secuencia de acciones e
interacciones 'pasos( entre los usuarios 'actores( !
el sistema
)))por e*emplo+
,Escenario-
El usuario introduce su nombre de usuario y su contrasea.
El sistema verifica la validez del nombre de usuario y de la
contrasea y permite al usuario el acceso al sistema. El
sistema muestra la pantalla principal del sistema. El usuario
selecciona la opcin de aadir nuevo empleado. El sistema
muestra...
6
Casos de Uso
(Qu es un actor?)
Un actor representa el rol *ugado por una persona o
cosa ue act"a con el sistema)
,Actor, .ol-
Cliente, Administrador, Usuario no Reistrado !Autenticado",
Usuario Reistrado !Autenticado", #efe de Compras, #efe de
$ersonal, %oderador, #efe de &epartamento, 'brero de
$lanta, (upervisor...
Actor o Rol?: /er%a me*or usar la palabra rol, pero
algunos piensan ue 0Actor1 $ue usado debido a una
mala traduccin del /ueco
7
Casos de Uso
(Qu es un caso de uso?)
NOTA: NO TODOS los
interesados en el
sistema (stakeholders)
son actores s!lo son
actores a"#ellos "#e
utilizarn el sistema
8
Casos de Uso
(Al gunas Caracter sti cas)
Actualmente, muc#a gente considera ue los casos
de uso son de vital importancia en los pro!ectos de
so$t2are 'rocesos !uiados por Casos de Uso(
Describen ba*o la $orma de acciones " reacciones
el comportamiento de un sistema desde el punto de
#ista de un usuario
3ermiten de$inir los l%mites del sistema ! las
relaciones entre el sistema ! su entorno
($U% &$'O(TANTE)
/e puede considerar ue #asta cierto punto, cada
caso de uso es independiente de los dems
9
Casos de Uso
(Al gunas Caracter sti cas)
Un caso de uso $% es un diagrama, $% es un
s%mbolo dentro de un diagrama)))
&&&es una forma de descri'ir un escenario de
interacci(n usuario sistema&&&
)))los diagramas vienen despu4s 'o antes( ! son una
$orma de tener una visin general de los casos de
uso, sus relaciones con los actores ! con otros casos
de uso
10
Descri pci n Textual de l os Actores del Si stema
(e!ueri mi entos" Qui nes i nteract#an con el si stema?)
Nom)re: )nom're del actor*
Descri*ci!n:
)descripci(n del actor*
Nom)re: Usuario no Autenticado
Descri*ci!n:
.epresenta a un usuario ue no se a identi$icado $rente
al sistema) Generalmente estos usuarios deber%an
poder registrarse 'crear un nuevo usuario( o ingresar al
sistema para trans$ormarse en usuarios autenticados,
en moderadores o en administradores del sistema
+++
11
Descri pci n Textual de un Caso de Uso
(e!ueri mi entos" Qu de$e %acer el si stema?)
Nom)re: )nom're del caso de uso*
A#tor: )nom're del autor +o autores, del caso de uso*
,echa: )fec-a de creaci(n del caso de uso*
Descri*ci!n:
Actores:
)actores participantes en el caso de uso*
)condiciones .ue de'en cumplirse para poder ejecutar el caso de uso*
,l#-o Normal:
)flujo normal +feliz, de ejecuci(n del caso de uso*
,l#-o Alternati.o:
)flujos alternati#os de ejecuci(n del caso de uso*
)condiciones .ue de'en cumplirse al finalizar la ejecuci(n del caso de uso*
)'re#e descripci(n del caso de uso*
'recondiciones:
'oscondiciones:
'lanillas de Casos de Uso (/enerales)
12
Descri pci n Textual de un Caso de Uso
(e!ueri mi entos" Qu de$e %acer el si stema?)
Nom)re: Crear mensa*e $oro
A#tor:
,echa: 21506507
Descri*ci!n:
3ermite crear un nuevo mensa*e '#ilo( en el $oro de discusin)
Actores:
Usuario 5 8oderador
El usuario debe de estar autenticado en el sistema)
3edro 34rez
'recondiciones:
contin0a+++
13
Descri pci n Textual de un Caso de Uso
(e!ueri mi entos" Qu de$e %acer el si stema?)
,l#-o Normal:
,l#-o Alternati.o:
El mensa*e #a sido almacenado en el sistema ! $ue publicado)
1)9 El actor pulsa sobre el botn para crear un nuevo mensa*e)
2)9 El sistema muestra una ca*a de te&to para introducir el t%tulo del
mensa*e ! una zona de ma!or tama:o para introducir el cuerpo del
mensa*e)
;)9 El actor introduce el t%tulo del mensa*e ! el cuerpo del mismo)
6)9 El sistema comprueba la validez de los datos ! los almacena)
<)9 El moderador recibe una noti$icacin de ue #a! un nuevo mensa*e)
=)9 El moderador acepta ! el sistema publica el mensa*e si 4ste $ue
aceptado por el moderador)
6)A)9 El sistema comprueba la validez de los datos, si los datos no son
correctos, se avisa al actor de ello permiti4ndole ue los corri*a)
>)?)9 El moderador rec#aza el mensa*e, de modo ue no es publicado sino
devuelto al usuario)
'oscondiciones:
+++contin#aci!n
14
Descri pci n Textual de un Caso de Uso
(e!ueri mi entos" Qu de$e %acer el si stema?)
En general, #a! muc#as variaciones sobre como se
puede describir un caso de uso
U8@ no de$ine ning"n estndar al respecto
/eleccione o dise:e una o ms plantillas ue
considere adecuadas para sus necesidades
Conozca bien la plantilla ue va a utilizar, sepa para
ue sirve cada campo 'argumente sobre su utilidad !
sea co#erente a lo largo de todas las plantillas(
15
Descri pci n Textual de un Caso de Uso
(e!ueri mi entos" Qu de$e %acer el si stema?)
3or e*emplo, en la plantilla anterior ser%a bueno
a:adir un campo prioridad)))
Nom)re: Crear mensa*e $oro
A#tor:
,echa: 21506507
'rioridad: <
Descri*ci!n:
3ermite crear un nuevo mensa*e '#ilo( en el $oro de discusin)
Actores:
Usuario 5 8oderador
El usuario debe de estar autenticado en el sistema)
3edro 34rez
'recondiciones:
16
&odel o de Casos de Uso
C!mo se
desarrolla #n
modelo de
Casos de Uso?
17
Di agrama de Casos de Usos
(e!ueri mi entos" Qu de$e %acer el si stema?)
Antes de #acer un caso de uso es necesario tratar de
entender los reuerimientos del sistema) Arate de e&presar lo
ue el sistema debe #acer+
,Cuales son las tareas
del5los actores involucrados-
En base a esto, trate de responder las preguntas+
)))el sistema debe permitir a los usuarios registrarse) El
administrador debe poder validar las peticiones de registro antes de
ue los usuarios puedan publicar nuevos mensa*es)))
,Bue datos debe el actor
crear, guardar, modi$icar,
destruir, leer-
,Debe el actor in$ormar al
sistema de cambios e&ternos
ocurridos-
,Debe el el sistema in$ormar
al actor de cambios internos-
18
Di agrama de Casos de Usos
Caso de Uso
Actor
Generalizacin 5
Especializacin
de Actores
@%mites del
/istema
Colaboracin
entre casos
de uso
Asociacin
Caso de
Uso 5 Actor
19
Di agrama de Casos de Usos
Usado para
compartir
comportamiento
com"n entre varios
casos de uso
Usado para
modelar por
separado el
comportamiento
e&cepcional 'o
adicional( del
caso de uso base
Usado para
modelar
relaciones de
Generalizacin 5
Especializacin
entre casos de
uso
20
Di agrama de Casos de Usos
(Di 'erenci a entre general i (aci n u extensi n)
Esto e.identemente est1 relacionado con la l1mina
anterior+++
Tomado de la doc#mentaci!n de la UOC (Uni.ersitat
O)erta de Catal#n2a) doc#mento 345+*df
21
)aci endo un parntesi s* * *
(+stereoti pos)
CRU/ es un acrnimo
ue viene de 0Create,
.ead, Update, Delete1
O-o: Esto es s!lo
#n e-em*lo de #n
*osi)le estereoti*o
no se lo tomen
literal+++
*lanillas de
casos de #so
(C6EDA)
22
)aci endo un parntesi s* * *
(+stereoti pos)
En este caso los estereotipos se utilizan para di$erenciar los distintos tipos
de actores '))client**, ))internal**, ))s"stem**() Algunas personas
reemplazan el 0monigote1 por iconos personalizados 'E*) Una
computadora, monigotes de distintos colores, etc4tera(
@os estereotipos se pueden utilizar
en casi todos los elementos
disponibles de U8@, de manera
ue se puede e0tender !
enri.uecer el lengua*e con su uso
23
)aci endo un parntesi s* * *
(+stereoti pos)
/e pueden utilizar imgenes para
representar cierto tipo especial de
actores
24
Di agrama de Casos de Usos
(+, empl o - . ncl ude - +xtends - +speci al i (aci n)
8"ltiples casos de uso 0reutilizan1 otros casos
de uso) De esta $orma no es necesario describir
varias veces el mismo caso de uso incluido
Algunas personas utilizan la
inclusin para e&presar ue
el caso de uso asociado debe
de invocarse de manera
0obligatoria1
25
Di agrama de Casos de Usos
(+, empl o - . ncl ude - +xtends - +speci al i (aci n)
3untos de e&tensin
e&pl%citos
3untos de e&tensin
e&pl%citos
26
Di agrama de Casos de Usos
(+, empl o - . ncl ude - +xtends - +speci al i (aci n)
Una e&tensin puede estar asociada
a varios puntos de e&tensin
@as notas son un
elemento com"n de
U8@, se pueden
asociar a casi todos
elementos
disponibles de U8@
27
Documento de U&/
(+st0ndares 1 )errami entas)
U$6 S#*erstr#ct#re
Ca*+ 47 *18 794
(Todo el Ca*:t#lo de CU)
$ostrar el ;is#al 'aradi8m
28
Al gunas egl as de +sti l o
(2ara l os Di agramas de Casos de Uso)
Cada actor ! caso de uso debe tener un
nombre "nico
@os actores deben tener nombres !5o iconos
representativos) @os nombres de los actores
deben representar roles
El nombre de un caso de uso debe indicar
acci(n ! debe ser claro " conciso
Forma !eneral:
Cerbo 'Dn$initivo( E
3redicado
1mprimir
.eporte de
Centas
29
Al gunas egl as de +sti l o
(2ara l os Di agramas de Casos de Uso)
Evitar el cruce de l%neas 'En general, mantenga el
diagrama ordenado(
Evite tener demasiados casos de uso en el mismo
diagrama '.egla < F 2( 'GEsto es relativoH(
8antener todos los casos de uso de un diagrama al
mismo nivel de abstraccin
Evite el uso comple*o de relaciones de e&tensin,
especializacin e inclusin 'Io ms de tres niveles(
GEn general, use el sentido com2n ! recuerde
utilizar la regla JD//H
30
Al gunas egl as de +sti l o
(2ara l a Descri pci n Textual de Casos de Uso)
Iarrar el $lu*o de eventos usando #oz acti#a3
en tiempo presente ! desde la perspecti#a
del actor+
Evitar el uso de la
#oz pasi#a+
3re$erir la #oz
acti#a+
0@a clave es introducida
por el usuario1
0El usuario introduce la clave1
0El sistema #alida la clave1
31
Al gunas egl as de +sti l o
(2ara l a Descri pci n Textual de Casos de Uso)
El caso de uso ue se describe debe e&presar un
solo re.uisito funcional 'Io trate de e&presar ms
de un reuisito $uncional en el mismo caso de uso(
/in embargo, un caso de uso puede e&presar ms
de un reuisito IK $uncional 'Esto est bien(
E&prese cada paso del $lu*o usando la $orma llamada
" respuesta 're$le*ar el #ec#o de ue el actor e*ecuta
algo ! el sistema responde a la solicitud del actor(+
0El actor introd#ce su nombre de usuario ! su contrase:a, !
el sistema .erifica si los datos concuerdan con lo ue est
almacenado en la base de datos1
32
+, empl o" Qu esta terri $l emente mal
en este di agrama?
<#= errores
*#ede
encontrar en
el dia8rama?
33
+, empl o" +l Si stema Anteri or
&uc%o &e, or epresentado
34
Detal l e del 3l u, o de +4entos
(Li star Sol i ci tudes Pendi entes)
,l#-o Normal:
1)9 El actor selecciona la opcin para listar las 4olicitudes endientes)
2)9 El sistema presenta una lista de todas las 4olicitudes endientes
'tanto de Re5istro de Usuario como de u'licaci(n de Mensaje( *unto
con una opcin para ver ms detalles sobre una solicitud en particular)
,l#-o Alternati.o:
En caso de un Reistro de Usuario)
;A)9 El usuario selecciona una solicitud)
6A)9 /i se trata de una solicitud de Re5istro de Usuario el sistema le
env%a al caso de uso rocesar 4olicitud de Re5istro +CU678,
En caso de una $ublicacin de %ensa*e)
;?)9 El usuario selecciona una solicitud)
6?)9 /i se trata de una solicitud de u'licaci(n de Mensaje el sistema le
env%a al caso de uso rocesar u'licaci(n de Mensaje +CU679,
35
+, empl o" 5tra epresentaci n
36
Detal l e del 3l u, o de +4entos
(Procesar Sol i ci tud de Regi stro)
,l#-o Normal:
1)9 El actor selecciona la opcin para procesar las solicitudes de Re5istro
de Usuario)
2)9 El sistema invoca al caso de uso :istar 4olicitudes endientes
+CU67;,, lo ue permite al usuario seleccionar una solicitud para procesar)
;)9 El sistema presenta la in$ormacin de la solicitud de Re5istro de
Usuario)
6)9 El usuario decide si aprueba o rec#aza la solicitud)
<)9 Una vez aceptada la solicitud el sistema registra al nuevo usuario !
4ste ueda !a listo para acceder al $oro)
,l#-o Alternati.o:
En caso de +ue la solicitud de Reistro de Usuario sea Rec,azada)
<A)9 El sistema noti$ica al correo correspondiente a la solicitud ue 4sta #a
sido rec#azada)
37
+, empl o"
Una m0!ui na expendedora de ca' (6)
38
+, empl o"
Una m0!ui na expendedora de ca' (7)
39
+, empl o"
Una m0!ui na expendedora de ca' (8)
El cliente enfrenta distintos
escenarios de*endiendo de
lo "#e *retende com*rar
*ero en 8eneral com*rar #n
*rod#cto es al8o m#2
8eneral con m#chas
acciones com#nes
40
+, empl o"
Una m0!ui na expendedora de ca' (9)
Cada des*acho tiene
*artic#laridades
acordes con el
*rod#cto solicitado
*or el cliente
41
&odel o de Casos de Uso
En (es#men
42
+n esumen Qu &odel an l os
Di agramas de Casos de Usos?
@os Casos de Uso 'Escenarios 5 Dnteraccin Usuario
9 /istema(
Actores del /istema
.elaciones entre+ Actores con Actores, Actores con
Casos de Uso, Casos de Uso con Casos de Uso
El refinamiento o descomposici(n de los casos de
uso
@os l%mites del sistema, el alcance del sistema
43
esumen de l a Cl ase
Casos de Uso 'Descripcin Ae&tual(
Casos de Uso 'Diagramas(
Elementos Comunes de U8@+ Estereotipos, Iotas,
Generalizacin 'Especializacin(
44
+3++:C. AS
8artin Lo2ler, U8@
Distilled, 3earson Addison9
Mesle! 2da) Edicin
?ooc#, .umbaug#,
Nacobson, El @engua*e
Uni$icado de 8odelado,
3earson Addison9Mesle!
1ra) Edicin
45
;raci as
<!racias=

También podría gustarte