Sei sulla pagina 1di 7

Anlisis de Sistemas Cursos: 2K7 2K10

Unidad: 3
Patrones para la construccin de
Modelos de Objetos del Dominio
- Diapositivas de clases Docentes: Ing. Marcela F. Cattaneo
2K7: Ing. Mara Irene Mac William
Ing. Germn Vlez
2K10: Ing. Claudia Snchez
Ing. Susana Turanzas

Patrones para Modelo de Dominio


Patrones de Software.
Concepto.
Para qu sirve

Patrones para la Construccin de Modelos de


Objetos del Domino. Tipos:

Patrn fundamental
Patrones transaccionales
Patrones de agregacin
Patrones de plan
Diapositivasdeclase:PatronesparaModeladodeDominio

Patrones para Modelo de Dominio


Patrn Fundamental:
Es la plantilla que todos los patrones siguen.
Coleccio n
numero
nombre
fecha
hora
status
sobreMi

Trabaj ador
numero
nombre
sobreMI
1

1..*

cuantos()
cuanto()
clasificarTrabajadores()
calcularSobreTrabajadores()
calcularParaMi()

calcularParaMi()
valueme()

Diapositivasdeclase:PatronesparaModeladodeDominio

Patrones para Modelo de Dominio


Patrones Transaccionales
Actor

Lugar

#2
#4
#3

Participan te

Transaccion

#5

ItemEspecifico

#7
#6
#11
Tra nsacci onSubsi gui ente

#6

DetalleTransaccion

#9

Item

#8
#10

DetalleTransaccionSubsiguiente

Diapositivasdeclase:PatronesparaModeladodeDominio

Patrones para Modelo de Dominio


Patrones Transaccionales
Pa rticipante
numero
fechaInicio
fechaFin
password
nivelAutorizacion
sobreMi

Lugar
Transaccion
numero
fecha
hora
status
sobreMi

#3

cuantos()
cuanto()
clasificarTransacciones()
calcSobreTransacciones()
calcParaMi()
estaAutorizado()

#4

calcParaMi ()
valueme ()

numero
nombre
direccion
sobreMi
cuantos()
cuanto()
clasificarTransacciones()
calcSobreTransacciones()
calcParaMi()

Diapositivasdeclase:PatronesparaModeladodeDominio

Patrones para Modelo de Dominio


Patrones Transaccionales
Trans accion
num ero
fecha
hora
s tatus
s obreMi

Item Es pecifico
num eroDeSerie
nom bre
s obreMI
valorAdaptado

#5

calcParaMi()
valuem e()
cuantos DuranteIntervalo()
cuantos DuranteIntervalos ()
clas ificarDetalles ()
calcularSobreDetalles ()
calcParaMi()

cuantos ()
cuanto()
clas ificarTrans acciones ()
calcSobreTrans acciones ()
calcularParaMi()

#10
#6

#11
Item
num ero
nom bre
des cr ip cion
valorPo rDefecto
s obreMI
cuantos ()
cuanto()
control arEs tad o()
calcSobreItem s Es peci fico s ()
clas ificarItems Es pecifi cos ( )
calcParaMi ()

#9

DetalleTrans accion
cantidad
es tado
s obreMI
calcParaMi()
valuem e()

Diapositivasdeclase:PatronesparaModeladodeDominio

Patrones para Modelo de Dominio


Patrones Transaccionales
Patrones
Transaccionales

La navegabilidad de las
asociaciones estn expresadas
como lo indican los patrones.
No es necesariamente siempre
as. Depende de cada Dominio
de Problema

Lugar

Sucursal

#4

Participante
Cliente

#3

Transaccin
Venta
TelfonoCelular
#6
#11

Pago

Detalle
Transaccin
subsiguiente

Item

#7

Transaccin
subsiguiente

#10

DetalleDeVenta

EjemplarCelular

Item
Especfico

#6

DetalleDePago

Detalle
Transaccin

Diapositivasdeclase:PatronesparaModeladodeDominio

Patrones para Modelo de Dominio


Patrones Transaccionales
Roles de
cada
transaccin

Transaccin
subsiguiente
#7
FacturaCompra +Facturacin

Remito

+Env o
#6

#6
DetalleFacCompra

Detalle
Transaccin
subsiguiente

Transaccin

#8

DetalleRemito

Detalle
Transaccin

Diapositivasdeclase:PatronesparaModeladodeDominio

Patrones para Modelo de Dominio


Patrones Transaccionales
Transaccin

Factura

Detalle Transaccin

Actor

Item
#6

Empresa
#9

DetalleFactura

Servicio

Transaccin
#2

Empleado
#3

VentaPliza

Participante

Diapositivasdeclase:PatronesparaModeladodeDominio

Patrones para Modelo de Dominio


Patrones Transaccionales.
Ejemplo de cmo usar los patrones para encontrar
atributos y responsabilidades
Item
TipoVehculo

marca
modelo
precioDiarioBasico
vehiculo : Vehiculo

Empresa dedicada al
alquiler de vehculos
por da

mostrarCantidadVehiculos()
mostrarDisponibles()
mostrarAsignados()

Transaccin

#11
FacturaAlquiler
Atributos deducidos con
ayuda del patron #11

numero
fecha
estado
cliente : Cliente
importe
fechaAlqDesde
fechaAlqHasta
fechaPago
crear()
mostrarDatos()
actualizarEstado()
registrarPago()
mostrarFechaAlquiler()

Atribut os deducidos con


ayuda del pat ron #11

Responsabilidades deducidas
con ayuda del patron #11

Item especfico

Vehiculo

#5

patente
fechaIngreso
valorAseguradora
estado
aireAcondicionado : Boolean
alquiler : FacturaAlquiler
calcularCostoDiario()
verficarEstado()
actualizarEstado()
mostrarAlquileres()
calcularMontoCobradoAlquiler()

Diapositivas declase:Patrones para Modelado deDominio

Atributos deducidos con


ayuda del patron #11

Responsabilidades deducidas
con ayuda del patron #11
Responsabilidades deducidas
con ayuda del patron #5

10

Patrones para Modelo de Dominio


Otros Patrones Transaccionales
Cuenta

Ej. aplicable a un

#12

Plan de Cuentas de

Empleado

Categora

un Sistema Contable
#13

TipoCuenta

#12 se aplica a cualquier


otra asociacin no considerada en los otros patrones.
CuentaSuperior

CuentaIntermedia

CuentaImputable

Diapositivasdeclase:PatronesparaModeladodeDominio

11

Patrones para Modelo de Dominio


Patrones de Agregacin
Patrones de
Agregacin

Contenedor

DiscoCom pacto

Motor

#14

Cine

Todo

#17

#17

Contenido
Cancin

Pieza

Sala

Parte

Grupo
Comisin
Todo
Miembro

#16

Gabinete

#17

Alumno

Mensaje

PC

Compuesto
de parte

#18

Componente

Paquete

Parte
Detalle Contenedor

#19

Seal

Acti vi dad Comercio

#15

Comercio

Componente
de Paquete

Diapositivasdeclase:PatronesparaModeladodeDominio

12

Patrones para Modelo de Dominio


Patrones de Plan
PlanProduccion

Version
numero
descripcion
fecha
crear()
mostrarDatos()

#24 Plan - Versin de Plan


1..*

EjecucionPlan

fechaCreacion
descripcion
fechaInicioEstimada
version : Version
OT : OrdenTrabajo
ejecucion : EjecucionPlan

fec haInicio
horaInicio
fec haFin
horaFin
encargado : Em pleado
observaciones
ejecucionOT : EjecucionOT

#21 Plan - Ejecucin de Plan


0..*

crear()
calcularDuracionEstimada()
mostrarTotalRecursosNecesarios()
calcularCostoTotalRecursos()
mostrarOT()
mostrarVersiones()
asignarVersion()

#20 Plan - Paso

crear()
calcularDuracion()
estaCompleto() : Boolean
mos trarEjecucionOT()

#23 Ejecucin de Plan - Ejecucin de Paso

OrdenTrabajo
nroOrden
numeroSecuencia
descripcion
duracionEstimada
recursosNecesarios
generoOT
estadoOT
ejecucion : EjecucionOT
crear()
mostrarRecursos()
calcularCostoRecursos()
mostrarCostoRecursos()

#22 Paso - Ejecuc in de Paso


0.. *

Recursos Necesarios y Utilizados


son referencia a otras clases

EjecucionOT
fechaInicio
horaInicio
fechaFin
horaFin
estado
ejecuto : Empleado
controlo : Empleado
recursosUtilizados
crear()
calcularDuracion()
completada() : Boolean
mostrarDatos()
mostrarRecursosUtilizados()
calcularCostoRecUtilizados()

Diapositivasdeclase:PatronesparaModeladodeDominio

13

Bibliografa
Coad Peter, Object Models, Strategies, Patterns
& Aplications (1995), Editorial Yourdon Press.
Meles Judith, Apunte de ctedra DSI: Patrones
para el Anlisis y Diseo de Software Orientado
a Objetos

Diapositivasdeclase:PatronesparaModeladodeDominio

14

Potrebbero piacerti anche