Patrones_de_Dominio_2K7_2K10_-_2015 (1)

7

Click here to load reader

Transcript of Patrones_de_Dominio_2K7_2K10_-_2015 (1)

Page 1: Patrones_de_Dominio_2K7_2K10_-_2015 (1)

8/19/2019 Patrones_de_Dominio_2K7_2K10_-_2015 (1)

http://slidepdf.com/reader/full/patronesdedominio2k72k10-2015-1 1/7

Page 2: Patrones_de_Dominio_2K7_2K10_-_2015 (1)

8/19/2019 Patrones_de_Dominio_2K7_2K10_-_2015 (1)

http://slidepdf.com/reader/full/patronesdedominio2k72k10-2015-1 2/7

Diapositivas de clase: Patrones para Modelado de Dominio 3

Patrones para Modelo de Dominio

• Patrón Fundamental:

 – Es la plantilla que todos los patrones siguen.

Coleccion

numero

nombre

fecha

hora

status

sobreMi

cuantos()

cuanto()

clasificarTrabajadores()

calcularSobreTrabajadores()calcularParaMi()

Trabajador 

numero

nombre

sobreMI

calcularParaMi()

valueme()

1..*1 1..*1

Diapositivas de clase: Patrones para Modelado de Dominio 4

Patrones para Modelo de Dominio

• Patrones Transaccionales Actor 

Lugar 

Participante   Transaccion

TransaccionSubsiguiente

DetalleTransaccionSubsiguiente

Item

ItemEspecifico

DetalleTransaccion

#2

#4

#3 #5

#6

#6

#7

#8

#9

#11

#10

Page 3: Patrones_de_Dominio_2K7_2K10_-_2015 (1)

8/19/2019 Patrones_de_Dominio_2K7_2K10_-_2015 (1)

http://slidepdf.com/reader/full/patronesdedominio2k72k10-2015-1 3/7

Diapositivas de clase: Patrones para Modelado de Dominio 5

Patrones para Modelo de Dominio

• Patrones Transaccionales

Participante

numero

fechaInicio

fechaFin

password

nivelAutorizacion

sobreMi

cuantos()

cuanto()

clasificarTransacciones()

calcSobreTransacciones()

calcParaMi()

estaAutorizado()

#3

Transaccion

numero

fecha

hora

status

sobreMi

calcParaMi()

valueme()

#4

Lugar 

numero

nombre

direccion

sobreMi

cuantos()

cuanto()

clasificarTransacciones()

calcSobreTransacciones()

calcParaMi()

Diapositivas de clase: Patrones para Modelado de Dominio6

Patrones para Modelo de Dominio

• Patrones TransaccionalesItemEspecifico

numeroDeSerie

nombre

sobreMI

valorAdaptado

cuantos()

cuanto()

clasificarTransacciones()

calcSobreTransacciones()

calcularParaMi()

#5

Transaccion

numero

fecha

hora

status

sobreMi

calcParaMi()

valueme()

cuantosDuranteIntervalo()

cuantosDuranteIntervalos()

clasificarDetalles()

calcularSobreDetalles()

calcParaMi()

#6

DetalleTransaccion

cantidad

estado

sobreMI

calcParaMi()

valueme()

Item

numeronombre

descripcion

valorPorDefecto

sobreMI

cuantos()

cuanto()

controlarEstado()

calcSobreItemsEspecificos()

clasificarItemsEspecificos()

calcParaMi()

#9

#10

#11

Page 4: Patrones_de_Dominio_2K7_2K10_-_2015 (1)

8/19/2019 Patrones_de_Dominio_2K7_2K10_-_2015 (1)

http://slidepdf.com/reader/full/patronesdedominio2k72k10-2015-1 4/7

Diapositivas de clase: Patrones para Modelado de Dominio 7

Patrones para Modelo de Dominio

• Patrones Transaccionales

Sucursal

DetalleDeVenta

TeléfonoCelular 

EjemplarCelular 

Cliente Venta

Pago

DetalleDePago

#4

#3

#6

#11

#10

#7

#6

PatronesTransaccionales

La navegabilidad de lasasociaciones están expresadascomo lo indican los patrones.No es necesariamente siempreasí. Depende de cada Dominiode Problema

Lugar 

Transacción

Participante

Detalle

Transacción

Item

Item

Específico

Transacción

subsiguiente

Detalle

Transacciónsubsiguiente

Sucursal

DetalleDeVenta

TeléfonoCelular 

EjemplarCelular 

Cliente Venta

Pago

DetalleDePago

#4

#3

#6

#11

#10

#7

#6

PatronesTransaccionalesPatronesTransaccionales

La navegabilidad de lasasociaciones están expresadascomo lo indican los patrones.No es necesariamente siempreasí. Depende de cada Dominiode Problema

La navegabilidad de lasasociaciones están expresadascomo lo indican los patrones.No es necesariamente siempreasí. Depende de cada Dominiode Problema

Lugar 

Transacción

Participante

Detalle

Transacción

Item

Item

Específico

Transacción

subsiguiente

Detalle

Transacciónsubsiguiente

Diapositivas de clase: Patrones para Modelado de Dominio 8

Patrones para Modelo de Dominio

• Patrones Transaccionales

FacturaCompra Remito#7

+Facturación

+Envío

Roles de

cadatransacción

DetalleRemito

#6

DetalleFacCompra

#6

#8

Detalle

Transacción

Transacción

Transacción

subsiguiente

Detalle

Transacciónsubsiguiente

FacturaCompra Remito#7

+Facturación

+Envío

Roles de

cadatransacción

DetalleRemito

#6

DetalleFacCompra

#6

#8

FacturaCompra Remito#7

+Facturación

+Envío

Roles de

cadatransacción

DetalleRemito

#6

DetalleFacCompra

#6

#8

Detalle

Transacción

TransacciónTransacción

Transacción

subsiguiente

Detalle

Transacciónsubsiguiente

Detalle

Transacciónsubsiguiente

Page 5: Patrones_de_Dominio_2K7_2K10_-_2015 (1)

8/19/2019 Patrones_de_Dominio_2K7_2K10_-_2015 (1)

http://slidepdf.com/reader/full/patronesdedominio2k72k10-2015-1 5/7

Diapositivas de clase: Patrones para Modelado de Dominio 9

Patrones para Modelo de Dominio

• Patrones Transaccionales

Factura

ServicioDetalleFactura

#6

#9

Item

Detalle Transacción

Transacción

Empresa

Empleado

#2

Participante

 Actor 

VentaPóliza#3

Transacción

Diapositivas de clase: Patrones para Modelado de Dominio10

Patrones para Modelo de Dominio

• Patrones Transaccionales. – Ejemplo de cómo usar los patrones para encontrar 

atributos y responsabilidades

FacturaAlquiler 

numero

fecha

estado

cliente : Clienteimporte

fechaAlqDesde

fechaAlqHasta

fechaPago

crear()

mostrarDatos()

actualizarEstado()registrarPago()

mostrarFechaAlquiler()

Vehiculo

patente

fechaIngreso

valorAseguradoraestado

aireAcondicionado : Boolean

alquiler : FacturaAlquiler 

calcularCostoDiario()

verficarEstado()

actualizarEstado()

mostrarAlquileres()calcularMontoCobradoAlquiler()

#5

TipoVehículo

marca

modelo

precioDiarioBasico

vehiculo : Vehiculo

mostrarCantidadVehiculos()

mostrarDisponibles()

mostrarAsignados()

#11

Empresa dedicada al

alquiler de vehículospor día

 Atributos deducidos conayuda del patron #11

Responsabilidades deducidas

con ayuda del patron #11

 Atributos deducidos con

ayuda del patron #11

Responsabilidades deducidas

con ayuda del patron #11

Responsabilidades deducidas

con ayuda del patron #5

 Atributos deducidos conayuda del patron #11

Item

Item específico

Transacción

Page 6: Patrones_de_Dominio_2K7_2K10_-_2015 (1)

8/19/2019 Patrones_de_Dominio_2K7_2K10_-_2015 (1)

http://slidepdf.com/reader/full/patronesdedominio2k72k10-2015-1 6/7

Diapositivas de clase: Patrones para Modelado de Dominio 11

Patrones para Modelo de Dominio

• Otros Patrones Transaccionales

Cuenta

TipoCuenta

CuentaSuper io r CuentaIntermedia CuentaImputable

#13

Ej. aplicable a un

Plan de Cuentas de

un Sistema Contable

#12 se aplica a cualquier 

otra asociación no conside-

rada en los otros patrones.

1

CategoríaEmpleado#12

Diapositivas de clase: Patrones para Modelado de Dominio 12

Patrones para Modelo de Dominio

• Patrones de Agregación

DiscoCompacto

Canción

#14

Motor 

Pieza

#17

Comisión

 Alumno

#16

PC Gabinete

Componente

#17#18

Cine

Sala

#17

Patrones de

 Agregación

Mensaje

Señal

#19

Contenedor 

Contenido

Todo

Parte

Todo

Parte

Compuesto

de parte

Grupo

Miembro

Paquete

Componente

de Paquete

 Activ idad Comerci o Comercio

Detalle Contenedor 

#15

DiscoCompacto

Canción

#14

Motor 

Pieza

#17

Comisión

 Alumno

#16

PC Gabinete

Componente

#17#18

PC Gabinete

Componente

#17#18

Cine

Sala

#17

Cine

Sala

#17

Patrones de

 Agregación

Mensaje

Señal

#19

Mensaje

Señal

#19

Contenedor 

Contenido

Todo

Parte

Todo

Parte

Compuesto

de parte

Grupo

Miembro

Paquete

Componente

de Paquete

 Activ idad Comerci o Comercio

Detalle Contenedor 

#15

Page 7: Patrones_de_Dominio_2K7_2K10_-_2015 (1)

8/19/2019 Patrones_de_Dominio_2K7_2K10_-_2015 (1)

http://slidepdf.com/reader/full/patronesdedominio2k72k10-2015-1 7/7

Diapositivas de clase: Patrones para Modelado de Dominio 13

Patrones para Modelo de Dominio• Patrones de Plan

0..*

#20 Plan - Paso

#21 Plan - Ejecución de Plan

#23 Ejecución de Plan - Ejecución de Paso

Version

numero

descripcion

fecha

crear()

mostrarDatos()

EjecucionPlan

fechaInicio

horaInicio

fechaFin

horaFin

encargado : Empleado

observaciones

ejecucionOT : EjecucionOT

crear()

calcularDuracion()

estaCompleto() : BooleanmostrarEjecucionOT()

PlanProduccion

fechaCreacion

descripcion

fechaInicioEstimada

version : Version

OT : OrdenTrabajo

ejecucion : EjecucionPlan

crear()

calcularDuracionEstimada()

mostrarTotalRecursosNecesarios()

calcularCostoTotalRecursos()

mostrarOT()mostrarVersiones()

asignarVersion()

1..*1..*

0..*

EjecucionOT

fechaInicio

horaInicio

fechaFin

horaFin

estado

ejecuto : Empleado

controlo : Empleado

recursosUtilizados

crear()

calcularDuracion()

completada() : Boolean

mostrarDatos()

mostrarRecursosUtilizados()

calcularCostoRecUtilizados()

OrdenTrabajo

nroOrden

numeroSecuencia

descripcion

duracionEstimada

recursosNecesarios

generoOT

estadoOT

ejecucion : EjecucionOT

crear()

mostrarRecursos()

calcularCostoRecursos()

mostrarCostoRecursos()

0..*0..*

#22 Paso - Ejecución de Paso

Recursos Necesarios y Utilizados

son referencia a otras clases

#24 Plan - Versión de Plan

Diapositivas de clase: Patrones para Modelado de Dominio 14

Bibliografía

•   Coad Peter, “Object Models, Strategies, Patterns

& Aplications” (1995), Editorial Yourdon Press.

• Meles Judith, Apunte de cátedra DSI: Patrones

 para el Análisis y Diseño de Software Orientado

a Objetos