Publicado el 20 de Mayo del 2018
1.390 visualizaciones desde el 20 de Mayo del 2018
342,1 KB
122 paginas
Creado hace 19a (22/03/2006)
Paquetes
• Elemento organizativo
• Puede contener elementos de cualquier tipo.
• Un elemento es exclusivo a un paquete.
• Posibilidad de anidar paquetes.
Modelo
Modelo
+ Producto
+ CarroCompra
+ Comercio
1
Paquetes
• Un paquete bien estructurado debe:
– ser cohesivo
– estar poco acoplado
– poco anidamientos
– conjunto equilibrado de elementos
2
Importación/Exportación en paquetes
• Los paquetes permiten controlar la complejidad del manejo de un
gran número de abstracciones, controlando los accesos mediante la
importación.
• La parte pública de un paquete son sus exportaciones.
• Las partes públicas son visibles en los paquetes que
importan al paquete contenedor.
• La importación no es transitiva.
• Los paquetes anidados pueden ver todo lo que ven los
paquetes que los contienen.
3
Cliente
+ FormularioPedido
+ FormularioDeSeguimiento
- Pedido
import
Servidor
+ BaseDeDatos
+ ServicioDeRegistro
GUI
+ Ventana
+ Formulario
# GestorEventos
Politicas
+ ReglasPedidos
+ GUI:Ventana
import
Generalización de Paquetes
GUI
+ Ventana
+ Formulario
# GestorEventos
WindowsGUI
+ GUI:Ventana
+ Formulario
# GUI:GestorEventos
+ VBForm
MacGUI
5
Uso de los paquetes
• Agrupar elementos, normalmente del mismo tipo, para
manejarlos en conjunto.
Paquete “Clases e interfaces del modelo”
Paquete “Interfaces de usuario”
Paquete “Servicios base de datos”
• Un modelo es un paquete que incluye todos los
elementos que constituyen una particular vista del
sistema modelado.
6
Sistema, modelo, vista, diagrama
• Un sistema es aquello que se está desarrollando y para
lo que se crean modelos.
• Un subsistema es una parte de un sistema.
• Un modelo es una abstracción de un sistema que ayuda
a comprenderlo.
• Una vista es una proyección de la estructura y
organización de un modelo del sistema, centrada en
algún aspecto.
• Un diagrama es una representación de un conjunto de
elementos de un modelo.
7
Vistas UML
vocabulario
funcionalidad
ensamblado
gestión conf.
Vista de Diseño
Vista de Implementación
comportamiento
Vista de casos de uso
Vista de Procesos
Vista de Despliegue
Funcionamiento
escalabilidad
rendimiento
topología
entrega
distribución
instalación
8
clases
interfaces
colaboraciones
clases activas
Vistas UML
componentes
Vista de Diseño
Vista de Implementación
casos de uso
Vista de casos de uso
Vista de Procesos
Vista de Despliegue
nodos
9
Vistas UML
Diagramas de clase
Diagramas de interacción
Diagramas de estado
Diagramas de componentes
Diagrama de interacción
Diagramas de estado
Vista de Diseño
Vista de Implementación
Diagramas de casos de uso
Vista de casos de uso
Vista de Procesos
Vista de Despliegue
Diagramas de clase
Diagramas de interacción
Diagramas de estado
Diagramas de despliegue
Diagrama de interacción
Diagramas de estado
10
Diagrama de Objetos
d:DiagramaClases
:Clase
:Relacion
:Atributo
:Metodo
:Clase
:Clase
11
Diagrama de Objetos
:Univers idad
d2:Departam ento
d2:Departam ento
d ire cto r:Pro fe so r
:P rofes or
:A s ignatur
a
12
Enlaces y Asociaciones
• Un enlace es :
– una conexión semántica entre objetos.
– una instancia de una asociación.
– un camino por el cual enviar un mensaje
Persona
+empleado
calcularCompensacion()
asignar()
1..*
1..*
+ patron
Empresa
*
*
enlace
p:Persona
:Em presa
1: asignar(desarrollo)
mensaje
13
Interacciones y Mensajes
• Interacción: comportamiento que comprende un
conjunto de mensajes intercambiados entre un conjunto
de objetos dentro de un contexto para lograr un
propósito.
• Mensaje: especificación de una comunicación entre
objetos que transmite información, con la expectativa
de desencadenar una actividad.
14
Modelado del comportamiento
• Se describe cómo los objetos colaboran entre sí para
realizar cierta actividad.
• Se expresa mediante los diagramas de interacción:
– Diagramas de Secuencia y Diagramas de Colaboración (de
Comunicación en UML 2.0).
• También se describe las máquinas de estado que
caracterizan los objetos
– Diagramas de estado
– Diagramas de actividades
15
Diagramas de Interacción
• Describen una interacción.
• Dos tipos: Diagramas de Secuencia y Colaboración
• Diagramas de Secuencia:
– Destacan la ordenación temporal de los mensajes
• Diagramas de Colaboración:
– Destacan la organización estructural de los objetos
participantes.
• Equivalencia semántica
16
Diagramas de Secuencia
• Representan escenarios.
• Incluye:
– Objetos y su línea de tiempo
– Mensajes : argumentos y self-delegation
– Información de control: condiciones y marcas de
iteración
– Indicar el objeto devuelto por el mensaje: return
(añadirlos sólo cuando ayuden a clarificar la interacción)
– Especificar procesos concurrentes: focos de control
17
Sincronización
Envío de mensaje simple:
– Un solo hilo de ejecución
– El objeto activo pasa el control al objeto pasivo
Un cliente
: Envío simple
Otro objeto
18
Sincronización
Envío de mensaje síncrono:
– Sólo se desencadena la operación cuando el servidor
acepta el mensaje
– El cliente se bloquea hasta que el servidor lo acepta
o rechaza
Un cliente
: Envío síncrono
Otro objeto
19
Sincronización
Envío de mensaje asíncrono:
– Un mensaje asíncrono no interrumpe la ejecución
del cliente
– El cliente envía el mensaje sin saber cuándo ni si se
llevará a cabo
Un cliente
: Envío asíncrono
Otro objeto
20
Diagrama de secuencia
Un objeto puede enviarse a sí mismo un mensaje:
a
m ens aje reflex ivo
Puede representar
también la entrada por
parte del objeto en
cierta actividad de más
bajo nivel
Diagrama de secuencia
• Gráficamente también se puede indicar cuándo
el mensaje es para crear el objeto (va dirigido al
rectángulo del objeto o etiquetado con new) o
para destruirlo (va dirigido a la línea del objeto
pero el final de la flecha es una cruz)
Diagrama de secuencia
Normalmente no es necesario indicar el retorno del
control, cuando el envío es síncrono:
a
b
E l retorno s e
c ons idera im plíc ito
c uando el envío es
s ínc rono
Diagrama de secuencia
En el caso asíncrono el retorno, si existe, se debe
representar:
a : aa
b : aa
Media punta de flecha indica mensaje asíncrono (desde UML 1.3; en
UML 1.5 ya no se distingue, aunque se acepta)
La flecha discontinua indica retorno del control
Tipos de Control
El Diagrama de Secuencia refleja de manera
indirecta las opciones de control
Un control centralizado tiene una forma como esta:
Tipos de control
Un control descentralizado tiene una forma como
ésta:
Estructuras de control
Podemos representar iteraciones en el envío de
mensajes mientras, p.e., se cumpla una condición:
W hile X
Loop
end Loop
Estructuras de control
La iteración puede expresarse también como parte
del mensaje:
*[c ondic ión] M ens aje
Estructuras de control
Las bifurcaciones condicionales pueden
representarse de esta forma:
If c ondic ión
els e
end if
Diagrama de secuencia
Diagrama de Secuencia
c:Comprador
p:ServidorWeb
<<create>>
:Transaccion
asignarrAcciones
tiemp o
exito
<<destroy>>
asignarValores
asignarValores
Línea de vida
del objeto
Foco de
control
La flecha discontínua indica
un r etorno del control
Foco de control:Muestra el periodo de tiempo que un objeto está realizando una acción (períodos de actividad del
objeto). La parte superior indica cuándo se inicia la acción y la inferior cuándo se termina (puede estar marcada
con un mensaje de respuesta -return-, indicando que se devuelve el control al objeto destino -se indica con flecha
discontinua-)
Diagrama de Colaboración
1: <<create>>
2: establecerAcciones
6: <<destroy>>
c:Cliente
:Transac
cion
5: exito
3: establecerValores
4: establecerValores
p:Proxy
ODBC
31
Diagrama de Secuencia
c:Cliente
a:Ayuda
Planificacion
<<create>>
:AgenteBilletes
establecerItinerario(i)
calcularRuta
ruta
<<destroy>>
notificar
32
Diagrama de Colaboración
3: calcularRuta
1: <<create>>
2: establecerItinerario(i)
5: <<destroy>>
c:Cliente
:A gente
Billetes
4: ruta
6: notific ar
a:Ay uda
Planificacion
33
Diagramas de Secuencia
:Interface
Entrada Pedido
:Pedido
:LineaDe
Pedido
:Item
preparar
*preparar
hayStock:=comprobar
[hayStock] eliminar
pedir?:=necesarioPedir
[pedir?]<<create>>
PedidoItem
[hayStock] <<create>>
ItemEntregado
34
Diagramas de Colaboración
:Interface Entrada
Pedido
1: preparar
2: *preparar
:Pedido
7:
:LineaDe
Pedido
5: pedir?:=necesarioPedir
8: [hayStock] <<create>>
3: hayStock:=comprobar
4: [hayStock] eliminar
:Item
Item
Entregado
6: [pedir?]<<create>>
Pedido
Item
35
Uso de los diagramas de interacción
• Modelado del aspecto dinámico.
• Modelado del flujo de control que caracteriza el
comportamiento de un sistema:
– casos de uso
– colaboraciones
– patrones
– frameworks
– operaciones
36
Diagrama de Secuencia (Caso de uso)
:
Cliente
iniciarCompra()
: Interfaz Compra
: CarroCompra
: Producto
nuevoCarroCompra(cliente)
seleccProducto(cantidad)
obtenerDescripcionDe(prod)
cargarProd(cliente,prod,cantidad)
confirmarCompra()
confirmarCompraDe(cliente)
decremStock(cantidad)
Realizar para cada
producto incluido en
el carro de compra
37
Diagrama de Colaboración Caso de Uso)
1: iniciarCompra()
3: seleccProducto(cantidad)
6: confirmarCompra()
2: nuevoCarroCompra(cliente)
5: cargarProd(cliente,prod,c antidad)
7: confirmarCompraDe(cliente)
: Cliente
: Interfaz
Compra
: Carro
Compra
4: obtenerDescripcionDe(prod)
: Producto
8: decremS toc k(c antidad)
38
Diagrama de Secuencia
: Technical
Responsible
: Launch
Manufacturing GUI
selectOrder()
selectOrder(cod)
launchManufacturing()
launchManufacturing(cod)
:OrderManager
:EvaluatedOrders
o : Order
: OrderLine
: Product
: WorkOrder
o:=find(cod)
launc
Comentarios de: Paquetes (0)
No hay comentarios