Professional Documents
Culture Documents
Contenidos
3.1 Introduccin 3.2 Actores y Casos de Uso 3.3 Modelo de casos de uso
3.3.1 Diagrama de contexto y modelo inicial. 3.3.2 Plantillas de especificacin. 3.3.3 Modelo estructurado.
3.4 Relaciones entre actores y casos de uso 3.5 Proceso de construccin del modelo de casos de uso 3.6 Propuesta de ciclo de desarrollo
3.1 Introduccin
Introducidos por I. Jacobson en Objectory. Los casos de uso describen bajo la forma de acciones y reacciones el comportamiento de un sistema desde el punto de vista de los usuarios. Son descripciones de la funcionalidad del futuro sistema independientes de la implementacin. Sirven para captar los requisitos funcionales de un sistema software.
3
Introduccin
Fcilmente compresibles por clientesusuarios. Representan los requisitos funcionales. Se utilizan como base para un desarrollo iterativo e incremental. Incorporados en la mayor parte de los mtodos de desarrollo OO de segunda generacin.
Sistema Au torizaciones
Comunicacin
Un actor puede ser una persona, un conjunto de personas, un sistema hardware, un sistema software o un reloj.
5
Actores
Un actor representan un rol que puede desempear alguien o algo que necesita intercambiar informacin con el sistema.
Cliente Bancario
Casos de uso
Un caso de uso describe una forma concreta de utilizar parte de la funcionalidad del sistema. La coleccin de todos los casos de uso describe toda la funcionalidad del sistema.
Extraccin de dinero del cajero Ingreso de dinero en el cajero Consulta de saldo
Documento que describe una secuencia de eventos que realiza un actor (agente externo) que usa el sistema para llevar a cabo un proceso que tiene algn valor para el. Cada caso de uso est formado por una secuencia de eventos, iniciada por un actor, que describe la interaccin que tiene lugar entre el actor y el sistema.
Caso de uso
Caractersticas:
Son iniciados por un actor (actor primario o principal). Pueden participar otros actores (secundarios) Poseen un nombre. Pueden contener condiciones de inicio (precondiciones) y condiciones de terminacin (postcondiciones) La descripcin del caso de uso contiene la secuencia de eventos.
Cliente Bancario
10
Entre actores: herencia. Entre actores y casos: comunicacin. Entre casos de uso:
Usa, extiende (UML 1.3) Incluye, extiende, hereda de (UML 1.5)
Notacin grfica
extiende incluye
Introducir Pedido
Cliente
extiende extiende
Empleado
incluye
Buscar Pedido Cancelar Pedido
incluye
12
13
El diagrama de contexto muestra los lmites del sistema y los actores (agentes externos) que interactuarn con el mismo.
Terminal Punto de Venta
Empleado
Cliente
Proveedor
Responsable de compras
Director Comercial
14
Modelo inicial
Socios
15
O bien:
Sistema de Pedidos
Gestin Pedidos Nuevo Pedido Cancelar Pedido Empleado Estado Pedido Gestin de Artculos
Gestin de Clientes
16
Gestin Clientes
Cancelar Pedido
Estado Pedido Borrar Pedido Buscar Pedidos
17
Nombre del CU. Descripcin. Actores (primario y secundarios) Precondiciones, Postcondiciones. Flujo de eventos.
18
Ejemplo TPV
19
Empleado
Proveedor
20
Empleado
Devolver productos
Supermercado electrnico
21
Plantillas TPV
Venta Productos
Empleado
Cliente
Empleado
Venta Productos
22
Plantilla TPV
Caso de uso Actores Propsito Venta de Productos Cliente (iniciador), Empleado Capturar una venta y su pago en efectivo Resumen Un cliente llega a la caja con productos para comprar. El empleado registra los productos y gestiona el pago en efectivo. Al acabar el cliente se va con los productos. Precondiciones El empleado se ha identificado en el sistema. Postcondiciones La venta se almacena en el sistema. Incluye Extiende Hereda de -
23
Plantilla TPV
Intenciones de usuario 1. El caso de uso se inicia cuando un cliente llega a la caja con productos. 2. El empleado indica que comienza una nueva venta. 4. El empleado introduce el cdigo de cada producto y la cantidad 6. El empleado indica el fin de la venta 8. El empleado dice el total al cliente. 9. El cliente entrega el importe 10. El empleado indica el dinero que ha recibido 12. El empleado deposita el dinero recibido en la caja, entrega el cambio y el recibo. 13. El cliente se va con los productos comprados ../.. continua Obligaciones del sistema
3. El sistema registra el inicio de una venta 5. El sistema determina el precio del producto y aade la informacin a la cuenta. 7. El sistema calcula y muestra el total.
24
Plantilla TPV
Extensiones sncronas #1. Si en 4 se introduce un cdigo de producto inexistente el sistema genera un mensaje de error. #2. Si en 9 el cliente no tiene dinero suficiente la venta se cancela. Extensiones asncronas Ninguna
Si nicamente se desea mostrar la interaccin con el sistema informtico, debe eliminarse la referencia al cliente dentro de la descripcin anterior.
25
26
Extensiones sncronas #1. Si en 3 se introduce un cdigo de producto inexistente el sistema genera un mensaje de error. #2. En 7 el empleado puede cancelar la venta. Extensiones asncronas Ninguna
27
28
29
Un escenario es una descripcin textual de una interaccin particular entre los actores y el sistema. A un caso de uso le corresponden varios escenarios. Los escenarios bsicos o principales no contienen situaciones de error. Los secundarios describen situaciones de error o alternativas de ejecucin.
30
Contiene los actores y las relaciones entre los casos de uso (explicado despus)
CommonUseCases:CoffeeMachine
<<usecase>>
MakeCoffee
:Customer
<<usecase>>
MakeTea
<<include>>
<<usecase>>
TeaMaking
31
32
Herencia entre actores: La relacin de herencia entre actores indica que el actor descendiente puede jugar todos los roles del actor antecesor.
Actor antecesor
Cliente Bancario
Cliente Corporativo
Cliente Normal
Actor descendiente
33
34
Bibliotecario
(from Use Case View)
Baja Socio
35
Flujo de eventos del caso de uso A Flujo de eventos del caso de uso B
36
Relacin de extensin
Un caso de uso B extiende a un caso de uso A, si en la descripcin de A figura una condicin cuyo cumplimiento origina la ejecucin del flujo de eventos de B.
<<extend>> Evaluar Solicitud de Crdito
37
38
til para:
Partes opcionales de un caso de uso. Representar sub-cursos de eventos que se ejecutan bajo ciertas condiciones. Para representar un men con opciones.
39
Extensin (4)
Punto de extensin 1
Seleccionar asiento
Punto de extensin 2
Imprimir asignacin
40
Relacin de herencia
Un caso de uso B se dice que especializa a un caso de uso A si el flujo de eventos asociado a B es un refinamiento del flujo de eventos asociado a A.
Relacin similar a la herencia OO. Permite separar un patrn de interaccin genrico (caso padre) de un patrn de interaccin ms especfico (caso descendiente).
41
Herencia (2)
Ejemplo
42
Dado un conjunto de casos de uso no existe una nica forma de representar las relaciones entre ellos. Diferencias entre inclusin y extensin:
Una inclusin es equivalente a una extensin sin condiciones. El caso incluido siempre forma parte del caso que incluye. El caso que incluye no tiene sentido sin el incluido.
43
La extensin se utiliza para representar alternativas de ejecucin que se llevan a cabo en algunas ocasiones. La especializacin se utiliza para representar patrones genricos de interaccin que pueden especializarse en patrones ms especficos o concretos.
44
Descendente
Detectar actores
45
Los usuarios pueden jugar varios roles cuando interactan con el sistema. Un usuario se puede corresponder con varios actores.
46
Quin usar el sistema? Quin instalar el mismo? Quin har labores de mantenimiento? Quin lo apagar? Qu otros sistemas se comunicarn con ste? Quin obtiene informacin? Quin proporciona informacin?
47
Cules son las tareas que los actores quieren que el sistema realice para ellos?. Podr un actor crear, almacenar, cambiar o borrar datos del sistema?. Ser necesario que un actor informe al sistema sobre cambios que han ocurrido en el exterior del mismo?. Ser necesario que el actor sea informado sobre ciertas ocurrencias o cambios dentro del sistema?.
48
Reglas...
Las respuestas a cada una de las preguntas anteriores representan flujos de eventos que identifican casos de uso candidatos.
49
El ciclo de desarrollo en espiral se puede estructurar tomando como base los casos de uso del sistema.
Ciclo de Desarrollo 1
Ciclo de Desarrollo 2
Ciclo de Desarrollo n
Analizar
Disear
Construir
Testear
50
Ciclo de desarrollo...
Caso de Uso B
Caso de Uso C
51
Ejemplo
Desarrollo de un software para procesar ordenes de pedido para una compaa de ventas por correo. sta se encarga de vender productos comprados a diversos proveedores. Dos veces por ao, la compaa publica un catalogo con sus productos, el cual es enviado a sus clientes y a otras personas interesadas. Los clientes compran productos enviando una lista de los mismos con la forma de pago. La empresa completa la orden y enva el pedido a la direccin correspondiente del cliente. El software de procesamiento de pedidos debe ser capaz de efectuar un seguimiento completo de una orden desde que sta es recibida hasta que sta es enviada. Los clientes pueden devolver artculos. Una interfaz electrnica, como la Web, puede ser apropiada para algunos clientes. La compaa utilizar diversas compaas de envo para atender los pedidos. ! NO se incluyen todos los requisitos!
52