Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Caso de Uso Coleman PDF
Caso de Uso Coleman PDF
Captulo 1
Presentacin de UML
Necesidad del modelado
Modelado de casos de Uso
Diagrama de casos de uso
Modelado estructural
Diagrama de clases
Paquetes
Vistas de UML
Modelado dinmico
Diagramas de interaccin
2
Captulo 1. Estructura (II)
Modelado de flujos de trabajo
Diagramas de actividades
Modelado del estado
Mquinas de estado
Modelado de la implementacin
Diagramas de componentes
Diagramas de despliegue
Colaboraciones
OCL (Object Constraint Language)
3
Captulo 1. Bibliografa
4
El lenguaje unificado de modelado, UML
5
El consorcio OMG
Oracle i-Logix
IBM ObjectTime
Microsoft Petch
Unisys
....
IntelliCorp
Cmo se cre UML
Rumbaugh
Booch Jacobson
Odell
Meyer
Pre- and Post-conditions
Shlaer-Mellor UML
Object life cycles
Harel
State Charts
Gamma et. al.
Frameworks, patterns,
notes
Embly Wirfs-Brock
Singleton classes Responsabilities
Fusion
Operation descriptions,
message numbering
11
(Tomada de www.dsic.upv.es/~uml)
Ventajas de la unificacin
12
Objetivos en el diseo de UML
Modelar sistemas, desde los requisitos hasta los artefactos
ejecutables, utilizando tcnicas OO.
15
Por qu modelamos?
16
Principios del modelado
17
Por qu las empresas no hacen modelado?
18
Problemas en el desarrollo de software?
Retrasos en los plazos
Proyectos cancelados
Rpido deterioro del sistema instalado
Tasa de defectos o fallos
Requisitos mal comprendidos
Cambios frecuentes en el dominio del problema
Muchas de las interesantes caractersticas del software no
proporcionan beneficios al cliente
Modelado es la solucin?
19
Utilidad del modelado
20
Utilidad de UML
21
Metamodelo UML
Cmo se expresa la semntica del modelo?
Informalmente
Formalmente
22
Metamodelo UML: Ejemplo
Relacin
Generalizacin Asociacion
1
ordered 2..*
Role de
asociacin
23
Cmo se organiza UML
Estructurales, Comportamiento,
Elementos Agrupacin (paquetes), Anotacin
(notas, comentarios)
Bloques bsicos
Dependencia, Asociacin
Relaciones (Agregacin), Generalizacin,
de construccin Realizacin
Especificaciones, Dicotoma,
Mecanismos
Adornos (detalles), Mecanismos
Comunes
de Extensibilidad
Modelo Conceptual de UML
25
Elementos Estructurales
Ventana
<<Interface>>
origen
IAvisable
tamao
IAvisable
abrir()
cerrar()
mover() Interface
dibujar()
clase ValidarTransaccion
caso de uso
26
Elementos Estructurales
Gestor Eventos
clase activa (UML 1.X) Hola
Mundo.class
suspender()
vaciarCola()
Servidor
Gestin Pedidos
nodo
27
Elementos de Comportamiento
Interaccin
Conjunto de mensajes intercambiados entre un conjunto
de objetos con un propsito particular.
dibujar
mensaje
28
Elementos de Comportamiento
Mquina de estados
Secuencia de estados por las que pasa un objeto durante
su vida en respuesta a eventos.
activado estado
29
Elementos de Agrupacin
Retorna 0 si no Nota
existe el valor
31
Relaciones
Dependencias
0..1 *
Asociaciones
patron empleado
Generalizaciones
Realizacin
32
Diagramas de UML
http://www.agilemodeling.com/essays/umlDiagrams.htm
33
Diagramas de UML
State
State
Use Case Diagramas de
Diagrams
Use Case Diagrams State
Use Case Diagramas de
Diagrams Clases State
Use Case Diagrams Diagramas de
Diagrams
Diagramas de
Diagrams Casos de Uso Diagrams
Diagrams Objetos
Secuencia
Estructural
Comportamiento
Interaccin
Scenario State
Scenario State
Diagramas de
Diagrams Diagramas de
Diagrams
Diagrams Diagrams
Colaboracin Modelo Componentes
Implementacin
Scenario Component
Scenario Component
Diagramas
Diagrams de
Diagramas de
Diagrams Diagrams
Diagrams Despliegue
Estados Diagramas de
Actividad
Reglas de uso de UML
Especificaciones
Explicacin textual de la sintaxis y la semntica de un bloque
de construccin
Proporcionan una base semntica para cada elemento
Los diagramas son proyecciones (o vistas parciales) de esa
base
Adornos
La notacin grfica bsica de cada elemento puede incluir
adornos textuales o grficos para resaltar algunas
propiedades de la especificacin.
36
Mecanismos comunes de UML
Divisiones Comunes
Dicotoma clasificador /instancia
Persona
Elena
nombre
direccion
telefono
Elena :
Persona
: Persona
37
Mecanismos comunes de UML
Divisiones Comunes
Dicotoma interfaz / implementacin
asistente
Ortografico.dll
IOrtografia
38
Mecanismos comunes de UML
Mecanismos de extensibilidad
Estereotipos
Extienden el vocabulario de UML, permitiendo aadir nuevos tipos
de bloques de construccin
Valores etiquetados
Extienden las propiedades de un bloque de construccin, aadiendo
nueva informacin
Restricciones
Extiende la semntica de un bloque, aadiendo reglas o modificando
las existentes.
39
Mecanismos de extensibilidad de UML
valor etiquetado
estereotipo
ColaEventos {version 3.2; autor: jgm}
aadir()
<<Exception>>
quitar()
Overflow vaciar()
{ordenado}
restriccin
40
Perfiles de UML
41
Modelado de Casos de Uso
43
xito de los casos de uso
44
Ejemplo Caso de Uso
Procesar Prstamo
ResponsablePrestamos
asociacion
45
Ejemplo de Casos de uso
Telfono mvil
Usuario (Booch et al. 99) 46
Ejemplo de Casos de Uso
Tono
Efectuar_llamada
Marca_nmero
Tono_sonando Timbre_sonando
Telefono_cogido
Para_tono Para_timbre
47
Otras definiciones de caso de uso
49
Actores
50
Actores
Secundarios:
El sistema necesita de ellos para satisfacer un objetivo
51
Propiedades de los casos de uso
Mquina de reciclado:
Botes
Recibo
Botellas
Cajas de botellas
55
Casos de uso. Ejemplo
Modif.
Devolver
tems
tems
Usuario
Listar Operador
diario
Actor Asociacin
56
Escenarios y Casos de Uso
57
Escenarios y Casos de Uso
$$$
Interactuar con
ATM
60
Descripcin de un caso de uso
61
Cajero Comprar Articulos Cliente
:Sistema
: Cajero
introducirItem(upc,cantidad)
finalizarVenta()
hacerPago(cantidad)
Descripcin de un caso de uso
63
Diagrama de Casos de uso
Profesor
Socio
Extender Prestamo 64
Consultar Socio
Algunas consideraciones
Cdu consulta
Cdu CRUD
Create/Read/Update/Delete
cdu Manage X
Son universales los cdu?
No (Larman 2003)
La Especificacin Suplementaria puede completar
la especificacin de requisitos funcionales
65
Diagrama de Casos de Uso
Cliente JefeTecnico
Cursar Pedido
Ordenar Fabricacion
Comercial
caso de uso
colaboracin
Hacer Pedido
Gestin Pedidos
realizacin
68
Escenario del caso de uso Realizar Compra
iniciarCompra()
nuevoCarroCompra(cliente)
seleccProducto(cantidad)
obtenerDescripcionDe(prod)
cargarProd(cliente,prod,cantidad)
confirmarCompra()
confirmarCompraDe(cliente)
decremStock(cantidad)
69
Casos de uso y Colaboraciones
70
Organizacin de Casos de uso
include
Comprobar clave
Relacin de
inclusin
Validar Usuario
Generalizacin
include
Seguir Pedido Examinar retina
72
Relacin de inclusin
73
Relacin de extensin
78
Ejemplo
Descripcin Se crearn rdenes de trabajo para cada producto solicitado en el pedido, y sern enviadas al jefe de
produccin para su planificacin.
Actores Jefe tcnico
Asunciones - Es viable la fabricacin de cada producto solicitado en el pedido.
- Existe una plantilla de fabricacin para cada producto solicitado.
Pasos 1. REPETIR
1.1 Obtener un producto del pedido.
1.2 Buscar la plantilla de fabricacin asociada al producto.
1.3 Crear la orden de trabajo.
1.4 Almacenar la orden de trabajo con el estado pendiente.
Variaciones -
Req. No Funcionales -
Cuestiones -
79
Plantilla Caso de Uso (A. Cockburn)
80
Plantilla Caso de Uso (A. Cockburn)
Extensiones
1a. Datos del parte incompletos
1a1. Compaa requiere datos
1a2. Asegurado enva datos
2a. Asegurado no tiene una pliza vlida
2a1. Compaa rechaza reclamacin, avisa
al asegurado.
3a. No hay agentes disponibles
3a1. qu hace la compaia?
.
81
Plantilla Caso de Uso (A. Cockburn)
Variaciones
1. Asegurado
a) una persona
b) otra compaa de seguros
c) el gobierno
2. Pago
a) transferencia
b) dinero en efectivo
c) cheque
82
Por qu casos de uso?
83
Crtica a los casos de uso (B.Meyer, E. Berard)
84
Utilidad de los casos de uso
85
Granularidad (M. Fowler)
Diferente granularidad
Un caso de uso puede describir:
Un objetivo o propsito del usuario
Una interaccin con el sistema
Un objetivo implica una o ms interacciones.
Primero construir un caso de uso por cada objetivo del
usuario.
Despus escribir casos de uso para cada interaccin
que corresponda a un objetivo.
86
Granularidad (A. Cockburn)
Organizacin
Objetivo estratgico para la empresa, de mucho
valor
Sistema (objetivo del usuario)
Funcionalidad del sistema, tarea del usuario o
proceso de negocio elemental
Subfunciones
Un paso en la descripcin de un caso de uso
(validar, buscar, log on)
87
Tipos de casos de uso (Larman)
88
Recomendaciones (E. Berard)
90
Recomendaciones (M. Fowler)
91
Recomendaciones A. Pols
92
Recomendaciones (A. Pols)
93
Especificacin de requisitos
95