Tm04 modelo de clases
-
Upload
julio-pari -
Category
Documents
-
view
1.453 -
download
1
Transcript of Tm04 modelo de clases
![Page 1: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/1.jpg)
Técnicas de Técnicas de modelamientomodelamiento
Modelo de ClasesModelo de Clases
Prof. César Luza MonteroProf. César Luza Montero
![Page 2: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/2.jpg)
Espacio de debateEspacio de debate
¿Es importante para el usuario ¿Es importante para el usuario final si el sistema fue programado final si el sistema fue programado orientado a objetos o orientado a objetos o estructurado?estructurado?
Entonces. ¿A quién interesa el Entonces. ¿A quién interesa el paradigma de programación paradigma de programación utilizado para su desarrollo?utilizado para su desarrollo?
![Page 3: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/3.jpg)
Paradigma estructuradoParadigma estructurado
El sistema se modela como un El sistema se modela como un conjunto de procedimientos que conjunto de procedimientos que intercambian información. intercambian información.
Datos y lógica por separadoDatos y lógica por separado
Diagrama de Flujos de Datos
![Page 4: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/4.jpg)
Paradigma Orientado a Paradigma Orientado a ObjetosObjetos
El sistema se modela como un El sistema se modela como un conjunto de objetos que conjunto de objetos que intercambian mensajes.intercambian mensajes.
Datos y lógica encapsulados en Datos y lógica encapsulados en clasesclaseso1 o4 o3
M1.4M1.3
![Page 5: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/5.jpg)
Conceptos O-OConceptos O-O
ObjetosObjetos ClasesClases Atributos y OperacionesAtributos y Operaciones Asociaciones y enlacesAsociaciones y enlaces Generalización y AgregaciónGeneralización y Agregación
![Page 6: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/6.jpg)
• Informalmente, un objeto representa una Informalmente, un objeto representa una entidadentidad física, conceptual o programafísica, conceptual o programa
Camión Proceso Químico
Lista Enlazada
¿Qué es un Objeto?¿Qué es un Objeto?
Entidad físicaEntidad física Entidad conceptualEntidad conceptual
Entidad Programa
![Page 7: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/7.jpg)
ObjetoObjeto
Persona
JuanGarcíaRodríguezMasculino15
comer()beber()dormir()
Persona
MaríaReyesHernándezFemenino45
comer()beber()dormir()
Vehículo
FordMustangBlancoSX-54852545
mover()abrir()girar()detener()
Vehículo
ChevroletCorsaAzul425-AB-8455
mover()abrir()girar()detener()
![Page 8: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/8.jpg)
Una definición formal Una definición formal
• Un objeto es un concepto, una abstracción o una cosa Un objeto es un concepto, una abstracción o una cosa con límites bien definidas y significado para una con límites bien definidas y significado para una aplicación aplicación
• Un objeto es algo que tiene:Un objeto es algo que tiene:– EstadoEstado– ComportamientoComportamiento– IdentidadIdentidad
![Page 9: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/9.jpg)
Nombre: Joyce ClarkNº Empleado: 567138Fecha de Contr.: 21 de marzo 1987Estado: Adjunto
Profesor Clark
a + b = 10
Un Objeto tiene EstadoUn Objeto tiene Estado
• El estado de un objeto es una de las posibles condiciones El estado de un objeto es una de las posibles condiciones en que el objeto puede existiren que el objeto puede existir
• El estado normalmente cambia en el transcurso del tiempoEl estado normalmente cambia en el transcurso del tiempo
• El estado de un objeto es implementado por un conjunto El estado de un objeto es implementado por un conjunto de propiedades (llamadas atributos), con los valores de las de propiedades (llamadas atributos), con los valores de las propiedades, además de las conexiones que deben tener propiedades, además de las conexiones que deben tener con otros objetoscon otros objetos
![Page 10: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/10.jpg)
EstadoEstado
Persona
JuanGarcíaRodríguezMasculino15
comer()beber()dormir()
Persona
JuanGarcíaRodríguezMasculino32
comer()beber()dormir()
Vehículo
FordMustangBlancoSX-54852545
mover()abrir()girar()detener()
Vehículo
FordMustangRojoSX-54852545
mover()abrir()girar()detener()
![Page 11: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/11.jpg)
Un Objeto tiene Un Objeto tiene ComportamientoComportamiento
• El comportamiento de un objeto El comportamiento de un objeto determina cómo éste actúa y reacciona determina cómo éste actúa y reacciona frente a las peticiones de otros objetosfrente a las peticiones de otros objetos
• El comportamiento de un objeto es El comportamiento de un objeto es modelado por un conjunto de mensajes modelado por un conjunto de mensajes aa los que puede responder (las operaciones los que puede responder (las operaciones que el objeto puede realizar)que el objeto puede realizar)
![Page 12: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/12.jpg)
Paso de mensajesPaso de mensajes
:MandoADistancia :Televisor
Conectar()
Canal(4)
Invocación de métodosInvocación de métodos Medio de colaboración Medio de colaboración
entre objetosentre objetos
![Page 13: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/13.jpg)
Profesor “J Perez”enseña Algebra
Profesor “J Perez”enseña Algebra
Profesor “M Molina”enseña Matemátcias
Un Objeto tiene IdentidadUn Objeto tiene Identidad
• Cada objeto tiene una identidad única, Cada objeto tiene una identidad única, incluso si su estado es idéntico al de otro incluso si su estado es idéntico al de otro objetoobjeto
![Page 14: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/14.jpg)
¿Qué son las Clases?¿Qué son las Clases?
• Hay muchos objetos identificados para Hay muchos objetos identificados para cada dominiocada dominio
• Una clase es una descripción de un grupo Una clase es una descripción de un grupo de objetos con propiedades en común de objetos con propiedades en común (atributos), comportamiento similar (atributos), comportamiento similar (operaciones), la misma manera de (operaciones), la misma manera de relacionarse entre objetos (asociaciones y relacionarse entre objetos (asociaciones y agregados) y una semántica en comúnagregados) y una semántica en común– Un objeto es una instancia de una claseUn objeto es una instancia de una clase
![Page 15: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/15.jpg)
Clases Clases
Representan un conjunto de objetos Representan un conjunto de objetos con características comunes.con características comunes.
LIBROSCOMPUTADORAS
![Page 16: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/16.jpg)
ClaseClase
Atributos
Operaciones
NombrePersonanombreapellido maternoapellido paternosexoedad
comer()beber()dormir()
![Page 17: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/17.jpg)
ClaseClase
Vehículomarcamodelocolornúmero de serie
mover()abrir()girar()detener()
Atributos
Operaciones
Nombre
![Page 18: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/18.jpg)
Clases y ObjetosClases y Objetos
¿Cuántas clases ve?¿Cuántas clases ve?
![Page 19: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/19.jpg)
Clases y ObjetosClases y Objetos
Clase : Clase : • Lavadora,Lavadora,• Automóvil,Automóvil,• Persona,Persona,• Factura,Factura,• Pedido.Pedido.
Objeto:Objeto:• Mi lavadora,Mi lavadora,• Auto de placa Auto de placa
SGC437, SGC437, • Luis Quispe Garcia,Luis Quispe Garcia,• Factura Nro. Factura Nro.
1234512345.,
• Pedido Nro. 54321Pedido Nro. 54321
![Page 20: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/20.jpg)
AtributosAtributos
Un atributo es una propiedad de una clase y describe un rango Un atributo es una propiedad de una clase y describe un rango de valores que la propiedad podrá contener en los objetos de la de valores que la propiedad podrá contener en los objetos de la clase.clase.
Atributos de la Atributos de la Clase Clase LavadoraLavadora::
Marca, Marca,
Modelo, Modelo, Número de serie, Número de serie, CapacidadCapacidad.
Valores en Objeto: Valores en Objeto: Mi lavadoraMi lavadora::
laundatorium, laundatorium,
washmeister, washmeister,
GL57774 , GL57774 ,
7 kg.7 kg.
![Page 21: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/21.jpg)
OperacionesOperaciones
Una operación es algo que la clase puede Una operación es algo que la clase puede realizar o que otra clase puede hacer a una realizar o que otra clase puede hacer a una clase.clase.
Es una función o transformación que se Es una función o transformación que se puede aplicar o que puede ser aplicada por puede aplicar o que puede ser aplicada por los objetos de una clase.los objetos de una clase.
Ejemplo : LavadoraEjemplo : Lavadora• Agregar ropa, Agregar ropa, • Agregar detergente, Agregar detergente, • Secar ropa.Secar ropa.
![Page 22: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/22.jpg)
TareaTarea
Proporcione Ud. 5 ejemplos deProporcione Ud. 5 ejemplos de• Clase, Clase, • objetos, objetos, • atributos y atributos y • operacionesoperaciones
![Page 23: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/23.jpg)
Clase y objeto ConceptualClase y objeto Conceptual
Lavadora
marcamodelonumeroSeriecapacidad
agregarRopa ()agregarDeter()secarRopa()
miLavadora: Lavadora
marca = “Laundatorium”modelo = “Washmeister”numeroSerie = “GLS7774”capacidad = 16
![Page 24: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/24.jpg)
Clase y objeto en UMLClase y objeto en UML
CuentanumeroCuentasaldofechaAperturasaldoPromedioabrir()consignar()suspender()sobregirar()
miCuenta : Cuenta
Nombre de la Clase
Atributos
Operaciones
![Page 25: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/25.jpg)
Enlaces y AsociacionesEnlaces y Asociaciones
Las entidades o cosas del mundo real Las entidades o cosas del mundo real se relacionan con otras entidadesse relacionan con otras entidades. .
A las relaciones entre objetos se les A las relaciones entre objetos se les llama llama enlacesenlaces..
A las relaciones entre clases se les A las relaciones entre clases se les llama llama asociacionesasociaciones..
Ej. “ Jugador participa en Equipo”Ej. “ Jugador participa en Equipo” Ej. “ Claudio Pizarro participa en Bayern Ej. “ Claudio Pizarro participa en Bayern
Munich”Munich”
![Page 26: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/26.jpg)
AsociacionesAsociaciones
Jugador EquipoParticipa en
Un cliente puede tener asociadas muchas Ordenes de Compra, en cambio una orden de compra solo puede
tener asociado un cliente.
Un cliente puede tener asociadas muchas Ordenes de Compra, en cambio una orden de compra solo puede
tener asociado un cliente.
![Page 27: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/27.jpg)
MultiplicidadMultiplicidad
Jugador EquipoParticipa en
Cantidad de objetos de una clase que se relaciona con un objeto de la clase asociada.
11 1
![Page 28: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/28.jpg)
... Multiplicidad... Multiplicidad
Maestro Estudiante
EsposaEsposo Uno a uno1 1
1 * Uno a muchos
Casado con
Enseña
Cajero ClienteAtiende1 1..* Uno a uno o más
Casa ChimeneaTiene1 0,1 Uno a ninguno o uno
Caja HuevosContiene1 12 Uno a 12
![Page 29: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/29.jpg)
Clase asociación
Empresa Persona
Empleo
descripciónsalariofechaContrato
* 1..*
empleador empleado
Clases que representan propiedades y operacionespropios de la relación
![Page 30: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/30.jpg)
EnlacesEnlaces
J. Jayo Jugador Alianza Lima : EquipoParticipa en
Un enlace es una instancia de una asociación
![Page 31: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/31.jpg)
Elementos de una Elementos de una asociaciónasociación
Compañia Personaempleador_de emplea empleado
0..1 *
multiplicidad
Nombreasociación
roles
Password
1
*
owner
dirección denavegación
![Page 32: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/32.jpg)
Generalización/Generalización/EspecializaciónEspecialización
Una clase (subclase) es un subtipo Una clase (subclase) es un subtipo de otra clase (superclase).de otra clase (superclase).
Indica que una subclase hereda los Indica que una subclase hereda los métodos y atributos especificados métodos y atributos especificados por una Superclase.por una Superclase.
![Page 33: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/33.jpg)
GeneralizaciónGeneralización
Persona
nombreapellido maternoapellido paternosexoedad
comer()beber()dormir()
Estudiante
gradocolegio
matricular()estudiar()
Trabajador
profesióncentro de trabajosalario
trabajar()cobrar()
Superclase
Subclases
![Page 34: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/34.jpg)
Generalización/Generalización/EspecializaciónEspecialización
¿Qué significa el siguiente diagrama?
![Page 35: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/35.jpg)
...Generalización...Generalización
Animal
Anfibio Mamifero Reptil
Caballo
Relación: subclase “es un tipo de” con la superclase
![Page 36: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/36.jpg)
Ejemplo de generalización
Persona
Cliente Proveedor
Aumento deabstracciòn
![Page 37: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/37.jpg)
Ejemplo de especialización
Cliente
minorista mayorista
Abstraccióndescendente
![Page 38: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/38.jpg)
AgregaciónAgregación
Una clase consta de otras clases.Una clase consta de otras clases. Es una relación entre clases componentes Es una relación entre clases componentes
asociada a una clase ensamble completo. asociada a una clase ensamble completo. Ejemplo: Un microcomputadora esta Ejemplo: Un microcomputadora esta
compuesta por :compuesta por :• Un Monitor, Un Monitor, • Caja del Sistema, Caja del Sistema, • Uno o ningun ratón y Uno o ningun ratón y • Un teclado.Un teclado.
![Page 39: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/39.jpg)
...Agregación...Agregación
Computadora
Monitor Cases Teclado
CPU
Relación: subclase “es parte de” con la superclase
Mouse1 1 0,11
RAM Ventilador
![Page 40: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/40.jpg)
Agregación / composiciónAgregación / composición
PC
Monitor Chasis Mouse Teclado
Pais
Dpto
MunicipioAgregación : la existencia de las partes es independiente de la existencia del todo (débil)Composición : la existencia de las partes depende de la existencia del todo. (fuerte)
![Page 41: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/41.jpg)
Ejemplo - diagrama de Ejemplo - diagrama de claseclase
CorrientetopeSobregiro
AhorrosaldoTrimestralinteres
CuentanroCuentasaldofecha apertura
HistoriaMovimientos
1..1 *1..1
+detalles
*
genera
![Page 42: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/42.jpg)
Construcción de Diagrama de clasesConstrucción de Diagrama de clases Identificar las clases
Se seleccionan los sustantivos de la descripción del problema como posibles clases candidatas. Se construye una lista.
Se eliminan las clases redundantes, irrelevantes o vagas o bien por ser atributos, operaciones o construcciones de implementación.
Identificar las asociaciones entre clases.
• Se le agrega la multiplicidad correcta. • También se puede representar la relación " es parte de" o agregación.
Identificar atributos.
Organizar y simplificar clases usando herencia.
• La herencia se puede usar para generalizar los aspectos comunes de las clases existentes construyendo una superclase, o para refinar una clase en subclases especializadas.
Verificar que el diagrama responda a los requerimientos.
Iterar y refinar el modelo.
![Page 43: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/43.jpg)
Una empresa recién formada se dedica a integrar partes para formar productos, con la intención de vender el valor agregado de la integración. Un relevamiento preliminar describe los datos esenciales de la organización con el fin de realizar un sistema computarizado para disminuir costos y responder con más agilidad. Un texto informal enuncia los datos principales y sus relaciones. Se necesita realizar un Class Diagram de UML para asegurarse de minimizar las ambigüedades, vaguedades y facilitar la comunicación mediante un estándar; éste es su trabajo.
Caso empresa de fabricación
Construcción de Diagrama de clases
![Page 44: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/44.jpg)
Un producto tiene un nombre y un precio base. Un producto se forma con muchas partes y cada parte puede formar muchos productos. La definición de cada producto especifica qué cantidad de cada parte forma a un producto dado.Un vendedor tiene un apellido, nombre y un porcentual de comisión. Tanto un cliente como un proveedor tienen los datos de todo agente comercial; éstos son: cuit, razón social, e-mail, teléfono y dirección. Además, un proveedor tiene un plazo de pago y un cliente un porcentual de descuento. Una parte puede ser comprada a muchos proveedores y un proveedor puede proveer muchas partes. Cada compra de una parte tiene una fecha y una cantidad. Una venta se realiza entre cualquier vendedor y cualquier cliente, y éste puede comprar cualquier producto. De una venta se quiere saber su fecha.No se pueden vender productos que estén formados por una única parte, esto es, no se permite vender productos sin elaborar.
Caso empresa de fabricación
Construcción de Diagrama de clases
![Page 45: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/45.jpg)
agenteComercial
proveedor
parte
cliente
producto
vendedor
Caso empresa de fabricación
Clases identificadas
![Page 46: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/46.jpg)
agenteComercial
proveedor
parte
0..*
0..*
0..*
0..*
Se compra
cliente
producto 1..*1..* 1..*1..* se forma
0..*
0..*
0..*
0..*
se vende
vendedor
Caso empresa de fabricación Asociaciones
![Page 47: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/47.jpg)
Caso empresa de fabricación atributos
vendedor
apellidonombreporcComis
agenteComercial
cuitrazSocialemailtelfdirecc
proveedor
plazoPago
parte
numPartedescripción
0..*
0..*
0..*
0..*
Se compra
cliente
porcDesc
producto
nombreprecioBase
1..*1..* 1..*1..* se forma
0..*
0..*
0..*
0..*
se vende
![Page 48: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/48.jpg)
Caso empresa de fabricación organizar: clases asociación, herencia
agenteComercial
cuitrazSocialemailtelfdirecc
proveedor
plazoPago
parte
numPartedescripción
0..*
0..*
0..*
0..*
Se compra
cliente
porcDesc
producto
nombreprecioBase
1..*1..* 1..*1..* se forma
0..*
0..*
0..*
0..*
se vende
definición
compra
venta
vendedor
apellidonombreporcComis
0..*
1
0..*
1
participa
![Page 49: Tm04 modelo de clases](https://reader036.fdocumento.com/reader036/viewer/2022062303/557b2089d8b42a4e048b482a/html5/thumbnails/49.jpg)
venta
fecha
agenteComercial
cuitrazSocialemailtelfdirecc
proveedor
plazoPago
parte
numPartedescripción
0..*
0..*
0..*
0..*
Se compra
cliente
porcDesc
producto
nombreprecioBase
1..*1..* 1..*1..* se forma
0..*
0..*
0..*
0..*
se vende
definición
cantidad
compra
fechacantidad
vendedor
apellidonombreporcComis
0..*
1
0..*
1
participa