1. Análisis y diseño orientado a objetos con UML
VISTA LÓGICA (MODELO ESTÁTICO Y DINÁMICO)
Clases
Atributos y operaciones
Responsabilidades
Relaciones
Asociación
Multiplicidad
Agregación
Generalización
Dependencia
Mecanismos comunes.
Estereotipos.
Paquetes.
Restricciones.
Modelo Vista Controlador (MVC).
Mapeo de clases a bases de datos relacionales.
VISTA LÓGICAVISTA LÓGICA
2. • La Vista Lógica describe la estructura
interna del sistema, es decir las partes que
lo integran y cómo interactúan.
Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Vista Lógica
Los diagramas de clase de UML nos permiten modelar esta vista del sistema
3. • Los diagramas de clase son uno de los diagramas más
importantes y más utilizados de UML.
• Permiten capturar los elementos que integran la
estructura interna del sistema así como su relaciones.
Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Diagramas de clase
Client e
+nombre
+apellido paterno
+apellido materno
+domicilio
+telefonos
Fact ura
+numero
+fecha
+monto
+emitir()
4. Una clase representa un grupo de objetos con
características y comportamiento comunes.
Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Qué son las clases
Atributos Operaciones
Características
externas y
visibles. Lo que
la clase conoce.
Conjunto de
acciones que
una clase realiza.
Lo que la clase
puede realizar.
5. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Atributos
• Los atributos representan una
propiedad de la clase definida en
términos abstractos.
• Cada atributo puede tomar un
valor en particular, determinando
así el estado de un objeto en un
momento determinado.
• Una clase puede tener varios
atributos o ninguno.
• El conjunto de atributos definen la
estructura de la clase.
Alum no
+nombre
+apellido
+segundo apellido
+fecha nacimiento
+domicilio
+matricula
6. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Operaciones
• Pueden ser algo hecho por o sobre
la clase.
• Las operaciones de una clase pueden
hacer uso de los atributos de la
clase y modificar sus valores,
cambiando así el estado.
• Las operaciones definidas en cada
clase permiten cumplir con sus
responsabilidades.
Elevador
+subir()
+bajar()
+detenerse()
+abrirPuertas()
+cerrarPuertas()
+seleccionarPiso()
-validarCapacidad()
7. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Notación UML
Nom bre de la clase
+ATRIBUTOS
+OPERACIONES()
Nom bre de la clase
8. • Las clases se pueden construir desde tres perspectivas:
– CONCEPTUAL. Representando los conceptos del dominio que se
está estudiando. Se dibujan sin importar el software con que se
implementarán por lo que son independientes del lenguaje. Pueden
ubicarse en el contexto del negocio (modelado de negocio) o del
sistema.
– ESPECIFICACIÓN. Enfocados al diseño del software en su
filosofía pero no en su implementación.
– IMPLEMENTACIÓN. Se expone por completo la implementación.
Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Perspectivas
9. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Perspectiva conceptual
Conceptos del dominio que se está estudiando.
No importa el software con que se implementarán
Son independientes del lenguaje.
Pueden ubicarse en el contexto del negocio (modelado de negocio) o del
sistema.
Pago
cantidad
Vent a
fecha
hora
Pago-por
11
10. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Perspectiva de especificación
Enfocados al diseño del software en su filosofía pero no en su
implementación.
Pago
cantidad: Dinero
getDevolucion(): Dinero
Vent a
fecha: Fecha
hora: Hora
getTotal(): Dinero
Pago-por
11
11. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Perspectiva de implementación
Se expone por completo la implementación. Ligada a un lenguaje de
programación orientado a objetos.
Pago
+cantidad: Dinero
+getDevolucion(): Dinero
Vent a
+fecha: Date
+hora: Date
+getTotal(): Dinero
Pago-por
11
Dinero
+monto: double
12. Las clases surgen de la terminología del problema.
Los sustantivos (cosas, personas, hechos) ya que
pueden convertirse en clases del modelo.
Verbos que pueden ser operaciones de las clases o
en clases por sí mismas.
Los atributos de una clase también se pueden
identificar por sustantivos específicos que pueden
tomar algún valor.
Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Cómo identificar las clases
13. • En las perspectivas de especificación e implementación, los
atributos y las operaciones se definen con mayor detalle:
Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Atributos y Operaciones
Clase
-atributo: Tipo = default
+Operacion(): Tipo
visibilidad
Aut o
-marca: String
-modelo: String
-placa: String
-transmision: String
+cargarGasolina(litros: double)
+setters()
+getters()
14. Todos los sistemas contienen varias clases.
Los objetos contribuyen al comportamiento del sistema colaborando unos y
otros. Esta colaboración se representa a través de las relaciones
La existencia de una relación entre dos clases denota una vía de
comunicación (enlace) por las que se puede enviar peticiones y mensajes
entre ellas.
Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Relaciones
Alum no
Curso
Profesor
Aula
15. • Existen varios tipos relaciones entre clases,
los principales son:
• Dependencia
• Asociación
• Agregación
• Composición
• Herencia
Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Relaciones
16. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Relaciones
Dependencia
Asociación
Agregación
Composición
Herencia
Cuando los objetos de una clase trabajan temporalmente
con objetos de otra clase.
Cuando los objetos de una clase trabajan con objetos de
otra clase por tiempo prolongado.
Cuando una clase es propietaria del objeto pero
comparte a otras clases la referencia del objeto. El
objeto puede existir independiente de la clase.
Cuando una clase contiene objetos de otra clase. Los
objetos no pueden existir independientes de la clase.
Cuando una clase es un tipo de otra clase.
+débil+fuerte
17. Es una relación “de uso”
entre dos elementos, uno
de ellos dependiente y el
otro independiente (cliente
y proveedor).
Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Dependencia
“ B depende de A “ es decir, B es el
Cliente y A es el Proveedor.
BBAA
18. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Dependencia
TeléfonoTeléfono
publicopublico
ViajeroViajero
LíneaLíneaPuntoPunto
dibujar (inicio:Punto, fin:Punto)
19. Es una relación estructural que
especifica que los objetos de un
elemento están conectados con los
objetos de otro.
Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Asociación
BBAA
Por cada instancia de uno pueden existir
“n” instancias del otro.
20. Las asociaciones de representan que una instancia de A ”tiene“
instancias de B.
La asociación puede ser nombrada con algún verbo que describa de
forma más precisa el tipo de relación entre dos clases, por ejemplo:
vende, imparte, participa, realiza.
Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Asociación
Persona Revist asuscribe +revista suscrita+suscriptor
0..*0..*
Personas se suscriben a revistas.
21. En las asociaciones además se
especifica la multiplicidad,
Es decir el número instancias de
una clase con respecto a la otra.
Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Multiplicidad
Exactamente uno
Cero o más
Uno o más
Cero o uno
Rango específico
1
0..*
1..*
0..1
2..4
Muchos
*
22. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Asociación
FarmaciaFarmacia
EquipoEquipo
MedicamentoMedicamentodistribuyedistribuye
*
*
PartidosPartidos
juegajuega
*
2
TrabajadorTrabajador
empleaemplea
*
1
EmpresaEmpresa
EstudianteEstudiante
alojaaloja
0..4
0..1
DepartamentoDepartamento
23. Es una relación donde una de las
clases es parte de la otra.
Si la clase contenedora es
destruida, la clase contenida
puede permanecer.
Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Agregación
BBAA
“ B es parte de A”
“ A contiene B ”
24. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Agregación
VentaVenta ClienteCliente
LlantaLlantaAutoAuto
JugadoresJugadoresEquipoEquipo
25. Al igual que la agregación, es una
relación de “todo-partes” pero
más fuerte.
El tiempo de vida de las partes
depende directamente la clase
contenedora.
Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Composición
BBAA
“ B es componente de A”
“ A se compone de B ”
26. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Composición
CorazónCorazónPersonaPersona
LápizLápiz PuntaPunta
Libro Capítulo
27. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Composición vs. Agregación
CapítuloCapítuloLibroLibro
BibliotecaBiblioteca LibroLibro
28. Representa una relación “es un”.
La subclase hereda los métodos y atributos
de la superclase, además de poseer sus
propios métodos y atributos
Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Herencia
BB
AA
“ B es un tipo de A”
“ A se especializa en B ”
29. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
ParticularParticular
TransporteTransporte
PúblicoPúblico
Herencia
DestajoDestajo
EmpleadoEmpleado
AsalariadoAsalariado HonorariosHonorarios
30. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Ejercicio 7
31. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Mecanismos comunes
Sirven para adaptar el lenguaje a necesidades particulares, dentro
de un marco ordenado respetando reglas.
Se usan para extender el lenguaje (UML) de manera controlada.
Mecanismos:
•especificaciones
•adornos
•divisiones comunes
•mecanismos de extensibilidad.
32. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Mecanismos comunes - Especificaciones
Los modelos UML tienen al menos dos dimensiones: una dimensión
gráfica y una textual.
Las especificaciones son descripciones textuales de la semántica de
un elemento.
Explicación textual de la sintaxis y semántica de los bloques de
construcción.
CuentaBancariaCuentaBancaria
Semántica plano posterior
Especificación de clase
Especificación caso de uso
Especificación dependencia
33. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Mecanismos comunes - Adornos
No hay necesidad de mostrarlo todo en un diagrama, es
más importante que el diagrama sea claro.
Los adornos son elementos que hacen visibles aspectos
de la especificación del elemento:
CuentaBancariaCuentaBancaria
CuentaBancariaCuentaBancaria
Elemento sin adornos
Elemento con adornos
{autor: Juan, estado: probado}
- numeroCuenta: long
-proietario: Cliente
- saldo: long
# retirar(): long
# calculaInteres(): void
# depositar(): void
34. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Notas
Las notas, es el tipo de adorno más utilizado.
Una nota es un símbolo gráfico utilizado para contener restricciones
o comentarios vinculados a un elemento o colección de elementos.
Permiten adjuntar información como: observaciones, revisiones o
explicaciones.
Sem aforo
+ estado
+ cambiar()
Un semaforo víal de tres estados
35. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Mecanismos comunes – Divisiones comunes
Existen dos divisiones comunes en UML:
clasificador/instancia
e
interfaz/implementación.
(…más)
36. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Mecanismos comunes – Divisiones comunes
Clasificador /Instancia
La noción abstracta de un tipo de elemento es un
clasificador.
Los elementos específicos, concretos, las instancias.
Ejemplo:
Alum no
+nombre
+apellidos
+matricula
+fechaNacimiento
Juan : Alumno
: Alumno
37. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Mecanismos comunes – Divisiones comunes
interfaz / implementación
El principio es separar qué hace algo (interfaz) de cómo lo hace
(implementación).
La interfaz define un contrato que garantiza seguir implementaciones
específicas.
Volador
Avión
Helicopt ero
Superhéroe
Volador
+despegar()
+planear()
+aterrizar()
38. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Mecanismos de extensibilidad
Estereotipos
Paquetes
Notas
Restricciones
Valores etiquetados
39. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Estereotipos
•Los estereotipos son un mecanismo de extensibilidad del UML.
•Un estereotipo amplía el vocabulario del UML, permitiendo crear
nuevos tipos de bloques de construcción, derivados de los
existentes y específicos para determinado problema.
•Se presentan como palabras entre paréntesis triangulares
<< estereotipo >>
•Aplican a diversos elementos de UML como: Clases, Casos de
Uso, Relaciones, Actores, etc.
40. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Estereotipos
Actor<<Sistema>><<Sistema>>
<<Tabla>><<Tabla>>
<<uses>><<uses>>
<<servidor><<servidor>
>>
<<java>><<java>>
41. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Paquetes
Un paquete es el elemento de organización básica de un modelo de
sistema UML.
Puede considerarse todo el sistema como un paquete que contiene los
demás paquetes, diagramas y elementos.
Un paquete puede contener paquetes subordinados, diagramas o
elementos únicos,
Paquete
java
lang
42. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Restricciones
Las restricciones permiten añadir especificaciones, condiciones o
limitaciones más detalladas.
Condiciones que deben cumplirse para que el modelo este bien
formado.
{ restricciones }{ restricciones }
Alum no
+nombre
+apellidos
+matricula
+fechaNacimiento
{mayor de edad}
Curso
43. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Valores etiquetados
Proporcionan una forma de ampliar la especificación al permitir
añadir nueva información a un elemento.
Es una palabra clave que puede tener un valor anexado.
{ etiqueta1=valor1, etiqueta2=valor2 }
Servidor
{procesadores = 3}
Un valor etiquetado no es lo mismo
que un atributo de clase
Más bien es un metadato que se
aplica al elemento, no a sus
instancias
{Autor=Juan Pérez}
Client e
+nombre
+apellido paterno
+apellido materno
+domicilio
+telefonos
44. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Modelo – Vista - Controlador
45. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Modelo – Vista - Controlador
La triada de clases Modelo/Vista/Controlador se uso para
construir interfaces de usuario en Smalltalk 80.
Consiste en tres tipos de objetos
Modelo Es el objeto de aplicación
Vista Es su representación en pantalla
Controlador
Define el modo en que la interfaz reacciona a la entrada del
usuario.
Antes de MVC las interfaces agrupaban los tres objetos en uno
solo
MVC los separa para incrementar la flexibilidad y reutilización.
46. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Modelo – Vista - Controlador
MVC desacopla las vistas de los modelos estableciendo entre
ellos un protocolo de suscripción/notificación
Cada vista debe reflejar el estado del modelo y cada vez que los
datos del modelo cambian este “avisa” a las vistas que dependen
de él.
En respuesta a estos “avisos” las vistas se actualizan
Esto permite crear nuevas vistas sin modificar el modelo.
A = 50%
B = 30%
C = 20%
vistas
modelo
47. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Modelo – Vista - Controlador
Aplicable a un problema general: desacoplar objetos de manera
que los cambios en uno puedan afectar a otros sin necesidad de
que el objeto conozca los detalles de los otros. (Patrón Observer)
Observers Subject
Suscriptores Periódico
48. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Modelo – Vista - Controlador
MVC y una aplicación Web
Cliente
CGI / Controlador
Value object
Página / Vista
DB
Modelo / BD /
lógica del
negocio
4
1
2
Crea instancias de
Petición HTTP
3
5 Respuesta HTTP
49. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Modelo – Vista - Controlador
MVC y una aplicación Web
1 El cliente realiza una petición HTTP la cual es recibida por un CGI.
2 El CGI actúa como un controlador y procesa la petición. Es
probable que realice una petición al modelo (usualmente la base
de datos). El resultado de procesar la petición se estructura en la
forma de un value object.
3 El controlador direcciona el control a la vista. Representada por
una página web (php, asp, jsp). La responsabilidad de la página
es generar la vista del modelo el cual obtiene con del value
object.
4
5 La vista regresa una página al navegador vía una respuesta
HTTP.
50. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Mapeo de clases a bases de datos
relacionales
51. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Mapeo de clases a bases de datos relacionales
Cómo modelar un esquema
1. Identificar clases persistentes
2. Crear un diagrama de clases que contenga las clases
marcadas como persistentes
3. Expandir detalles estructurales de estas clases
4. Centrar la atención en las relaciones que estructuran las
clases y en su cardinalidad.
52. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Mapeo de clases a bases de datos relacionales
Mapeo de clases a Base de Datos
Cada clase identificada como persistente se mapea a una tabla:
Cliente
nombre
direccion
telefono
Tabla Cliente
clienteID nombre dirección teléfono
53. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Mapeo de clases a bases de datos relacionales
Mapeo de clases a Base de Datos
Relaciones de uno a muchos
Tabla Cliente
clienteID nombre direccion telefono
Cliente
nombre
direccion
telefono
Renta
fecha
devuelto
0..*
11
0..* Tabla Renta
rentaID fecha devuelto clienteID
54. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Mapeo de clases a bases de datos relacionales
Mapeo de clases a Base de Datos
• Relaciones de muchos a muchos
Table ProductoIngrediente
productoID ingredienteID
Producto
Ingrediente
1..*
0..*
1..*
0..*
55. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Mapeo de clases a bases de datos relacionales
Mapeo de clases a Base de Datos
Relaciones de herencia:
Cada subclase es mapeada a una tabla separada con una
columna adicional por cada atributo heredado.
Todas las clases de la jerarquía son mapeadas a una única
tabla, agregando columnas para todos los atributos de la
jerarquía.
56. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Diagramas de interacción
57. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Diagramas de interacción
Una interacción establece el escenario para un
comportamiento del sistema introduciendo todos los
objetos que colaboran para realizar alguna acción.
Incluyen los mensajes enviados entre objetos. La
mayoría de las veces, un mensaje implica la
invocación de una operación o el envío de una señal.
Las interacciones se usan para modelar el flujo de
control dentro de una operación, una clase, un
componente, un caso de uso o el propio sistema.
58. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Diagramas de interacción
Un diagrama de interacción es una representación gráfica de
interacciones entre objetos. Hay dos tipos de diagramas de
interacción:
1. Diagramas de secuencia
2. Diagramas de colaboración
Cada uno provee un punto de vista diferente de la misma
interacción
Los diagramas de secuencia están ordenados de acuerdo
al tiempo
Los diagramas de colaboración muestran la organización
entre objetos.
59. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Diagramas de interacción
CBA
m1
m2
m3
m4
m5
60. Cliente AgenteBilletes AyudaPlanificacion
1
<<create>>
2 : establecerItinerario()
3 : calcularRuta()
4 : ruta
5
<< destroy>>
6 : notificar
Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
objeto
Creación
Llamada
Llamada
(invocación local)
Retorno
Valor de retorno
Destrucción
Envío
61. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Diagramas de interacción
: Bank Clerk
A1 : Account A2 : Account
transfer
withdraw
deposit
62. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Diagramas de interacción
A2 : Account
: Bank Clerk
A1 : Account: Transfer
transfer
withdraw
Deposit
63. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Diagramas de interacción
: Bank Clerk
: TransferScreen : Transfer A1 : Account A2 : Account
Enter Amount
Enter Source Account
Enter Destination Account
Transfer
Transfer
Withdraw
Deposit
64. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Diagramas de colaboración
– Un diagrama de colaboración es una forma alternativa de
representar los mensajes intercambiados por un conjunto de
objetos
– El diagrama muestra interacciones de objeto organizadas
alrededor de los objetos y sus ligas a cada uno
– Un diagrama de colaboración contiene:
Objetos
Ligas entre objetos
Mensajes intercambiados entre objetos
Flujo de datos entre objetos, si hay alguno
65. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Diagramas de colaboración
John : Alumno
forma de registro
forma horarioclases disponibles
1: introducir id
2: validar id
3: introducir semestre actual
4: crear nuevo horario
5: desplegar
6: obtener cursos
66. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Diagramas de colaboración
John : Alumno
forma de registro
forma horarioclases disponibles
1: introducir id
2: validar id
3: introducir semestre actual
4: crear nuevo horario
5: desplegar
6: obtener cursos
mensajeNúmero de secuencia
objetoenlace
objeto
67. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Diagramas de estado
68. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Diagramas de estado
Describe el comportamiento dinámico de los objetos en
un cierto plazo.
Los diagramas de estado se usan para mostrar la
historia de vida de una clase dada, los eventos que
causan una transición de un estado a otro, y las
acciones que resultan de un cambio de estado.
El estado de un objeto es una de las condiciones
posibles en las que puede existir un objeto.
69. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Diagramas de estado
Estado
Estado secuencial
Estado concurrente
Estado AEstado A
Fin
Inicio
ELEMENTOS DE UN
DIAGRAMA DE ESTADO
70. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Diagramas de estado
Estado
Un estado es una de las condiciones posibles en las
que puede existir un objeto.
Evento
Es la ocurrencia de alguna situación que sucede en un
punto del tiempo; tiene una localización en tiempo y
espacio.
• Ocurre en un punto en el tiempo y no tiene duración.
• Evento de llamada
• Evento de señal
• Evento de cambio
• Eventos de tiempo
71. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Diagramas de estado
Transición
Una transición es un cambio de un estado original a un
estado sucesor como resultado de algunos estímulos.
Las transiciones pueden ser restringidas por:
o Evento señal
o Llamada
o Cambio de evento
o Tiempo del evento.
72. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Diagramas de estado
Infancia Adolescencia
Madurez
Senectud
encendido
despegue
aterrizando
apagado
volando
73. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Diagramas de estado
addStudent
Initialize
do: Initialize course
object
Unassigned
do: Assign professor
to course
Open
entry: Register a
student
Closed
do: Report
course is full
Canceled
do: Send cancellation
notices
addStudent/
numStudents = 0
cancelCourse
RegistrationComplete
do: Generate class
roster
cancelCourse
[ numStudents = 10 ]
cancelCourse
[date = end]
registration closed[
numStudents < 3 ]
74. Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML
Vista Lógica
Diagramas de estado
principal
<< ventana>>
Altas
< <ventana> >
"Listo/Cancelar"
"Nuevo miembro"
Impresión de credencial
< <ventana> >
"Imprimir"
"Listo/Cancelar"
"Salir"
"Baja"
<<ventana> >
"Terminar membresia"
"Listo/Cancelar"