Академический Документы
Профессиональный Документы
Культура Документы
Identificar los actores y casos de uso Representar en UML y textualmente los casos de uso Utilizar las relaciones <<include>> y <<extend>> Relacionar los casos de uso con otras tcnicas de modelado de UML
4.1
Tipos de requisitos
Funcionales: caractersticas del sistema
Se describe con casos de uso
Requisitos no funcionales
Usabilidad Rendimiento Mantenibilidad Soporte, adaptabilidad... Implementacin
Documentacin de requisitos
Visin
Grandes objetivos y restricciones, alcance del proyecto
Especificacin adicional
Requisitos no funcionales, Requisitos de dominio y Requisitos de informacin
Glosario
Terminologa bsica del dominio
Sistema
Caso de uso X
12
13
Un actor en particular:
El actor es la llave para encontrar casos de uso correctos (Entrevistas, actividades asociadas a un actor...) Un actor interacciona a travs de una instancia concreta del caso de uso (escenario) 14
Un caso de uso es un conjunto de escenarios (xitos y fracasos) relacionados por el resultado que el actor pretende obtener La relacin entre escenario y caso de uso es idntica a la que existe entre objeto y clase15
16
18
19
Formatos de descripcin
El caso de uso se puede describir con varios niveles de detalle:
Breve
Un resumen inicial en un par de frases
Informal
Un conjunto de prrafos y alternativas
Completo
Con todas las alternativas, pre y post-condiciones, etc.
Formatos de descripcin
Por otro lado, se distinguen: Casos de uso Esenciales
El comportamiento del sistema sin entrar en detalles tecnolgicos
Ser necesario ajustarlos a los requisitos no funcionales de tipo tecnolgico antes de completar el diseo de la capa de interfaz
21
n Excepciones Paso p
Rendimiento
q El sistema deber realizar la/s accin /es descrita/s en {los pasos [primer paso] al [ltimo paso], el paso [nmero de paso]} en un mximo de [cota de tiempo] Este caso de uso se espera que se lleve a cabo una media de [nmero de veces] al [unidad temporal] {vital, importante,quedara bien} {inmediatamente, hay presin, puede esperar} <otras consideraciones en formato libre>
23
<nombre del objetivo> El sistema deber comportarse tal como se describe en el siguiente caso de uso { concreto cuando <evento de activacin> , abstracto durante la realizacin de los casos de uso <lista de casos de uso>}
24
Plantilla (pie)
Rendimiento Paso Cota de tiempo
n segundos n segundos
<n de veces> veces / <unidad de tiempo> {sin importancia, importante, vital} {puede esperar, hay presin, inmediatamente} <comentarios adicionales>
25
Plantilla (excepciones)
Excepciones
Paso Accin
Si <condicin de excepcin>,{el <actor> , el sistema} }<accin realizada por el actor o sistema>>, se realiza el caso de uso < caso de uso RF-x>, a continuacin este caso de uso {continua, aborta}
1 4
...
27
Cliente
29
Preguntas
Pueden utilizarse tcnicas de observacin o entrevista La mayora de los objetivos son obvios (vender, cobrar, gestionar una devolucin...) Para detectar todos los casos de uso, se puede preguntar: Escribe/lee/modifica el actor alguna informacin del sistema? Cules son las principales tareas de cada actor? Informa el actor al sistema de los cambios externos? Desea el actor ser informado de cambios no esperados?
31
Ms preguntas
Preguntas estndar para encontrar otros actores y objetivos:
quin arranca el sistema? quin gestiona los usuarios y la seguridad? el sistema debe hacer algo cada cierto tiempo? quin evala la actividad del sistema? Cmo se actualiza el software?
32
Proceso de elaboracin
Identificar a grandes trazos los casos de uso Las principales etapas de cada caso de uso se describen con un par de frases Se distingue un camino principal y se identifican los caminos alternativos y excepciones Proceso iterativo:
Los casos de uso se amplan, profundizndose en su descripcin Se buscan etapas comunes y alternativas que representar en otros caso de uso relacionados por las relaciones incluye, generaliza y extiende
33
34
35
Se deben consideran en lo posible todos los escenarios de modo que se pueda validar el caso de uso.
La ltima comprobacin consiste por tanto en asegurar que el caso de uso represente todos los escenarios.
administracin
Cajero automtico
37
Sacar dinero El sistema deber permitir al cliente del banco, en cualquier momento, sacar dinero segn se describe en el siguiente caso de uso: 1+ El usuario inserta la tarjeta en el cajero 2 + El cajero lee el cdigo de la banda magntica de la tarjeta y verifica si es aceptable y pide el cdigo del usuario 3+ El usuario introduce el cdigo 4 + Si el cdigo es correcto, el cajero pide al usuario que seleccione el tipo de transaccin deseada 5+ El usuario selecciona la funcin sacar dinero, 6 + El cajero le pide al usuario que teclee la cantidad deseada 7 + El usuario teclea la cantidad que quiere sacar, 8 + El cajero enva la peticin al sistema del banco 9 a Si conecta el sistema deber comprobar si hay dinero en la cuenta
9 b Si no conecta el sistema deber comprobar si el dinero es menos que el lmite 10 En cualquiera de los dos casos el sistema: + expulsa la tarjeta + imprime el recibo + entrega el dinero 2' La tarjeta no es aceptada + Se expulsa emitiendo un sonido 4' Cdigo incorrecto (1,2) + Se emite un mensaje dando al usuario la oportunidad de volver a introducir el cdigo (paso 3) 4'' Cdigo incorrecto (3) + Se emite un mensaje y se retiene la tarjeta 9' No autorizado para sacar dinero + El sistema de banco no autoriza a sacar dinero. Se emite un mensaje de informacin y se expulsa la tarjeta 9 a ', 9 b' No hay dinero suficiente + El cajero no dispone de la cantidad pedida. Emite un mensaje y vuelve al paso 7 1..10' Cancelar + En cualquier momento el usuario puede cancelar la transaccin, con lo que se expulsa la tarjeta
Excepciones
38
39
40
...
Monitor cardiaco
MonitorRemoto
Paciente
44
Funcin
Camino de comunicacin entre un actor y un caso de uso en el que participa Insercin de comportamiento adicional en un caso de uso base (sin que ste tenga conocimiento) Relacin entre un caso de uso general y otro ms especfico que hereda caractersticas y aade otras Insercin de comportamiento adicional dentro de un caso de uso que describe la insercin
Notacin
Extiende
<<extiende>>
Generalizacin
Incluye
<<incluye>>
46
Relacin Incluye
Es una relacin de dependencia donde un caso de uso utiliza otro caso de uso completo, indicando que se incrusta en el primero. Cuando un nmero de casos de uso comparten un comportamiento comn, se extrae en un caso de uso que es utilizado (<<include>>) por otros.
El caso de uso incluido es el factor comn. Si el caso de uso nunca se utiliza por s mismo se denomina caso de uso abstracto.
47
Relacin Incluye
<<include>>
Comprobar tarjeta y PIN Sacar dinero
<<include>>
Actor
Consultar saldo
48
Relacin de Generalizacin
Indica que un caso de uso es una variante de otro. El caso de uso especializado puede variar cualquier aspecto del caso de uso base:
Cuando un caso de uso extiende otro, significa que el primero puede incluir parte del comportamiento del caso de uso que l extiende. No tiene porque incluir el comportamiento completo; pudiendo elegir que partes se quieren reutilizar.
Relacin de Generalizacin
Cliente Remoto
Cliente
50
Relacin Extiende
Es una relacin de dependencia donde un caso de uso aade acciones al caso de uso base. El caso de uso base declara un conjunto de puntos de extensin. El caso de uso especializado slo puede alterar el comportamiento de los puntos de extensin marcados.
Si hay ms de uno, hay que identificar exactamente cul es es punto extendido.
Generaliza y Extiende
Process Sale Extension Points: Payment VIP Customer extend Payment, if Customer.... transferencia Giro Handle Gift Certificate Payment
52
Process Sale Cashier include include include Handle Check Payment include Handle Cash Payment Handle Credit Payment actor Credit Authorization Service actor Accounting System
Customer
53
transferencia <<include>>
Identificacin
54
Comprobacin del estado Vendedor Realizacin de un pedido Atencin al Cliente Completar pedido Empleado
Realizacin de un pedido
<<i
<<
in c
lud
e> >
<<
in c
Orden de pago
lu de >>
Pedido de productos
56
Especificacin e implementacin
La especificacin de los casos de uso nos permite conocer el comportamiento externo que define la posible secuencia de mensajes intercambiados entre los actores y el sistema. Al nivel de casos de uso esto es especificado como
un diagrama de secuencia (dilogo actor/sistema) una mquina de estados, incluyendo el diagrama de actividad.
66
5: ejemplares disponibles
6: identifica un ejemplar y solicita al sistema que registre el prstamo 7: proceso de registro ha terminado
67
La vista de los casos de uso es una descripcin funcional de las necesidades estructuradas con respecto a un actor
68
<<
in c
Orden de pago
lu de >>
Pedido de productos
69
La realizacin de un caso de uso por una colaboracin es momento crucial del modelado; Es el momento del cambio hacia la orientacin a objeto
70
Caso de uso
<<Realiza>>
Colaboracin
<<Participa>>
<<Participa>>
<<Participa>>
Objeto
Objeto
Objeto
71
Casos de uso y UP
Cundo inicio elaboracin Donde
January
February
Use Case: Capture a Sale ... Main Success Scenario: 1. ... 2. ... 3. ... Extensions:
Use Case: Handle Returns ... Main Success Scenario: 1. ... 2. ... 3. ... Extensions:
Analista
Cliente Arquitecto
Usuario
Desarrollador
Quin
Cmo
Software: 72 Herramienta CASE + herramienta de requisitos + Hyperlink
Bibliografa Recomendada
Larman, C. UML y Patrones. Introduccin al Anlisis y Diseo Orientado a Objetos y al Proceso Unificado . Prentice Hall, 2002.
Captulos 6..9, 25
Amador Durn y Beatriz Bernrdez, Metodologa para la Elicitacin de Requisitos de Sistemas Software. 2002.
Lecturas complementarias
J. Rumbaugh, I. Jacobson, G. Booch, El Lenguaje Unificado de Modelado. Manual de referencia. Addison-Wesley,2000 A. Cockburn. Writing Effective Use Cases. Addison-Wesley 2001
73
Administrador:
Aadir usuarios Modificar usuarios Gestionar tablas del sistema
Director:
Poner en marcha Suspender operaciones
Control de ventas:
Analizar los datos de ventas y rendimiento
74
<<extend>>
Gestionar seguridad
75
: Sistema : Actor_Cajero inicia nueva venta 1. El cajero inicia una nueva venta cuando un cliente llega a la caja con uno o varios artculos 2. El cajero introduce el cdio del artculo 3. El sistema registra una lnea de detalle y muestra el nombre y precio del artculo (pasos 2 y 3 se repiten) 4. El cajero indica el fin de la venta 5. El sistema presenta el total 6. Punto de extensin: PAGO 7. El sistema registra la venta y enva la informacin al sistema contable ...
fin de la venta presenta el total Punto de extensin: Forma de PAGO registra la venta
77