Download - Vista lógica
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ÓGICA VISTA LÓGICA
• 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
• 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
Cliente
+nombre+apellido paterno+apellido materno+domicilio+telefonos
Factura
+numero+fecha+monto
+emitir()
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.
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.
Alumno
+nombre+apellido+segundo apellido+fecha nacimiento+domicilio+matricula
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()
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
Nombre de la clase
+ATRIBUTOS
+OPERACIONES()
Nombre de la clase
• 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
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
Venta
fechahora
Pago-por
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 especificación
Enfocados al diseño del software en su filosofía pero no en su implementación.
Pago
cantidad: Dinero
getDevolucion(): Dinero
Venta
fecha: Fechahora: Hora
getTotal(): Dinero
Pago-por
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
Venta
+fecha: Date+hora: Date
+getTotal(): Dinero
Pago-por
11
Dinero
+monto: double
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
• 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
visibilidadAuto
-marca: String-modelo: String-placa: String-transmision: String
+cargarGasolina(litros: double)+setters()+getters()
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
Alumno
Curso
Profesor
Aula
• 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
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
+ f
uert
e
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
Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML Vista Lógica
Dependencia
Teléfono Teléfono publicopublico ViajeroViajero
LíneaLíneaPuntoPunto
dibujar (inicio:Punto, fin:Punto)
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.
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 Revistasuscribe +revista suscrita+suscriptor
0..*0..*
Personas se suscriben a revistas.
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*
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
*
*
PartidosPartidosjuegajuega
*
2
TrabajadorTrabajadorempleaemplea
*
1EmpresaEmpresa
EstudianteEstudiantealojaaloja
0..4
0..1DepartamentoDepartamento
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 ”
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
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 ”
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
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
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 ”
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
Diplomado de Bases de Datos - Modelado Orientado a Objetos
Análisis y diseño orientado a objetos con UML Vista Lógica
Ejercicio 7
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.
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
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
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.
Semaforo
+estado
+cambiar()
Un semaforo víal de tres estados
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/instanciae
interfaz/implementación.
(…más)
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:
Alumno
+nombre+apellidos+matricula+fechaNacimiento
J uan : Alumno
: Alumno
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 comunesinterfaz / 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
Helicoptero
Superhéroe
Volador
+despegar()+planear()+aterrizar()
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
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.
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>>
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
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 }
Alumno
+nombre+apellidos+matricula+fechaNacimiento
{mayor de edad}
Curso
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=J uan Pérez}
Cliente
+nombre+apellido paterno+apellido materno+domicilio+telefonos
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
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
ControladorDefine 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.
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 actualizanEsto permite crear nuevas vistas sin modificar el modelo.
A = 50%B = 30%C = 20%
vistas
modelo
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
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 dePetición HTTP
3
5 Respuesta HTTP
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.
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
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 persistentes2. Crear un diagrama de clases que contenga las clases
marcadas como persistentes3. Expandir detalles estructurales de estas clases4. Centrar la atención en las relaciones que estructuran las
clases y en su cardinalidad.
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
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
nombredirecciontelefono
Renta
fechadevuelto
0..*
11
0..* Tabla Renta
rentaID fecha devuelto clienteID
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..*
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.
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
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.
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.
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
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
LlamadaLlamada
(invocación local)
Retorno
Valor de retorno
Destrucción
Envío
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 ClerkA1 : Account A2 : Account
transfer
withdraw
deposit
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
transferwithdraw
Deposit
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
TransferTransfer
Withdraw
Deposit
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
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 horario5: desplegar
6: obtener cursos
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 horario5: desplegar
6: obtener cursos
mensajeNúmero de secuencia
objetoenlace
objeto
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
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.
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 A
Estado B
Estado A
Estado B
Estado 1
do : Operación
Acción
do : Operación
Fin
Inicio
ELEMENTOS DE UN DIAGRAMA DE ESTADO
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
EstadoUn estado es una de las condiciones posibles en las que puede existir un objeto.
EventoEs 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
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ónUna 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ñalo Llamadao Cambio de eventoo Tiempo del evento.
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
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 ]
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"