SlideShare una empresa de Scribd logo
1 de 21
Descargar para leer sin conexión
Programación Orientada a Objetos
Clase 4 Continuación - UML
PARADIGMAS DE PROGRAMACION UTN - La Plata
UML - Lenguaje unificado de modelado
1) Diagrama de clases
2) Diagrama de secuencias
3) Actividad
UML - Lenguaje unificado de modelado
UML
Lenguaje unificado de modelado
1. Diagrama de clases.
nombreClase3
 atrib4
……..
• mens4()
NombreClase1
 atrib1
 atrib2
• mens1()
• mens2()
nombreClase2
 atrib3
……
• mens3()
2. Diagrama de secuencias.
3. Actividades.
UnObj1 unObj2 unObj3
mens.1 (argumentos)
mens 2(argumentos)
[condición 1]
mens 3(argumentos)
[condición 2]
mens 5()
mens 4(argumentos)
1. Diagrama de clases
Un diagrama de clases describe:
• Los tipos de objetos en el sistema.
• Las relaciones estáticas que existen entre ellos.
• Los atributos y operaciones de las clases.
• Las restricciones a las clases y a sus asociaciones.
Un diagrama de clases es un diagrama de estructura
estática que describe la estructura de un sistema.
Permite modelar sus clases, atributos, operaciones y
relaciones entre objetos.
Cliente
 nroCliente
……..
• verNroCliente()
……..
Persona
 nombre
 dirección
• verNombre()
• modiNombre()
• …….
Empleado
 cargo
……
• sueldo()
……..
Componentes básicos de un diagrama de clases
1. Diagrama de clases
En UML las clases se representan mediante un rectángulo que puede estar dividido en tres partes.
•Sección superior: Contiene el nombre de la clase.
•Sección central: Contiene los atributos de la
clase.
•Sección inferior: Incluye operaciones de clases
(métodos), organizadas en un formato de lista.
Cada operación requiere su propia línea.
Perro
 nombre
raza
colorPelo
• come()
•guardaHueso()
•marcaTerritorio()
Nombre
Atributos
Métodos
1. Diagrama de clases
Las relaciones existente entre las distintas clases nos indican cómo se comunican los objetos de esas
clases entre sí.
Relaciones entre clases
Las relaciones más importantes son:
a) Asociación: conexión entre clases. b) Herencia: generalización y especialización.
a) Asociación: es una relación estructural que describe una conexión entre objetos.
1. Diagrama de clases
Cuenta
 nro
 saldo
• depositar()
• extraer()
• verSaldo()
Cliente
 nombre
 dni
 direccion
• verNombre()
• modiNombre()
cuenta
1
titular
1
1 uno y sólo uno
0..1 cero o uno
m..n de m a n (enteros naturales)
* de cero a varios
0..* de cero a varios
1..* de uno a varios
La multiplicidad pueden establecer
restricciones de existencia para los
objetos de las clases asociadas.
Elementos de una asociación:
• Nombre
• Rol(es)
• Multiplicidad
1. Diagrama de clases
Agregación y composición: son casos particulares de asociaciones. Muestran la relación
entre un todo y sus partes.
Gráficamente, se muestran como asociaciones con un rombo en uno de los extremos
Agregación: las partes pueden formar parte de distintos agregados.
Polígono Punto
contiene
0..1 3..*
1. Diagrama de clases
Composición: las partes sólo existen asociadas al compuesto, sólo se accede a ellas a través
del compuesto.
Ventana
Cabecera
barra
0..1 0..2
Panel ScrollBar
1
título
cuerpo
1
1
1
1. Diagrama de clases
+ General
+ Específico
Moto
 cilindrada
• verCilindrada()
•modiCilindrada()
Vehículo
nroPatente
titular
 marca
modelo
• encender
•acelerar()
• frenar()
Auto
 cantPuertas
• verPuertas()
• modiPuertas
b) Herencia: Es el proceso en el que una subclase o clase derivada recibe la funcionalidad de una
superclase o clase principal, también se conoce como "generalización".
1. Diagrama de clases
Un Banco cuenta con información de las cuentas y de los clientes que maneja.
Un cliente del banco tiene la posibilidad de tener o una Caja de Ahorro o una Cuenta Corriente. Ambas
cuentas cuentan con la siguiente información: número de cuenta, titular y saldo. Además las Cajas de
ahorro guardan información de la cantidad de extracciones que se han realizado en la cuenta, (distintas
para cada cuenta) y no permiten giros en descubierto. Las Cuentas corrientes permiten retiros en
descubierto pero hasta un cierto límite que es propio de cada una de ellas.
De los clientes se conoce el nombre, dirección y DNI.
Las operaciones permitidas en ambas cuentas son: depósito de dinero, extracción y consulta de saldo.
El banco permite hacer transferencias de una cuenta a otra.
Ejercicio 1: Modelar la siguiente situación usando un diagrama de clases.
Banco
 nombre
 dirección
• transferir()
Cuenta
 nro
 saldo
• depositar()
• extraer()
• verSaldo()
Cliente
 nombre
 dni
 direccion
• verNombre()
• modiNombre()
CajaAhorro
 cantExtracciones
• extraer()
CuentaCorriente
 saldoEnRojo
• extraer()
banco 1
banco
1
cuentas
*
cuenta
1
titular
1
clientes
*
Diagrama de clases del Ejercicio 1
Un Comercio desea manejar pedidos. De los pedidos se conoce: la fecha en que se
recibió el pedido, si fue prepagado, y el precio total.
Cada pedido está formado por varios productos. De cada producto se conoce: su
código, cantidad y precioUnitario.
Cada pedido se relaciona con el cliente correspondiente. Un cliente puede realizar
varios pedidos, pero un pedido corresponde a un sólo cliente.
El cliente puede ser corporativo o personal. Ambos tienen nombre y dirección y
responden a una operación que retorna la calificación del crédito, el cual es “bajo“ si
el cliente es personal. Todo cliente corporativo puede relacionarse opcionalmente
con un empleado del comercio, que será su representante de ventas, mientras que
un empleado puede representar a varios clientes corporativos.
Diagrama de clases del Ejercicio 2
Ejercicio 2: Modelar la siguiente situación usando un diagrama de clases.
Pedido
 fecha recibido
 prepagado
 precioTotal
• despacha()
• cierra()
Producto
 código
 cantidad
 precioUnitario
Cliente
 nombre
 direccion
• calificaciónCrédito()
ClienteCorporativo
 nombreContacto
 calificaciónCrédito
 límiteCrédito
• facturaciónMes()
ClientePersonal
 nroTarjetaCrédito
pedidos 1
pedido
representante de ventas
cliente
productos
1
*
Empleado
*
0..1
*
Diagrama de clases del Ejercicio 2
Diagramas de interacción:
Son modelos que describen la manera en que colaboran grupos de objetos
para cierto comportamiento.
Hay dos tipos de diagramas de interacción:
diagramas de secuencia y diagramas de colaboración.
En un Diagrama de Secuencias:
2. Diagramas de Secuencias
• Un objeto se muestra como caja en la parte superior de una línea vertical
punteada. Esta línea vertical se llama línea de vida del objeto y representa la vida
del objeto durante la interacción.
• Cada mensaje se representa mediante una flecha entre las líneas de vida de los
objetos. El orden en el que se dan estos mensajes transcurre de arriba hacia abajo.
2. Diagramas de Secuencias
• Cada mensaje es etiquetado por lo menos con el nombre del mensaje. Pueden
inclusive agregarse los argumentos y alguna información de control.
• Un objeto puede enviarse un mensaje a sí mismo, eso se llama autodelegación. Se
representa con una flecha que sale de la línea de
vida del objeto y vuelve a la línea de vida del mismo objeto.
Información de control:
• Condición: el mensaje se envía sólo si la condición es verdadera.
Se simboliza con [condición]
• Marcador de iteración: un mensaje se envía muchas veces a varios objetos receptores,
como sucedería cuando se itera sobre una colección.
Se simboliza con *[mensaje]
2. Diagramas de Secuencias
• El diagrama puede incluir el regreso de un mensaje, este regreso se representa
con una línea punteada. Pueden no representarse.
2. Diagramas de Secuencias
Para realizar la operación el cliente le indica al banco la operación a realizar, el monto
de la misma, los números de cuenta para poder realizar la transferencia. Con esta
información, el banco busca las cuentas con los números ingresados, controla que la
operación sea posible y lleva a cabo la operación o devuelve un mensaje de error.
Nota: tenga en cuenta que el banco va a interactuar con un objeto ‘tabla’ que contiene
todas sus cuentas. Identifique los mensajes que puede recibir ese objeto ‘tabla’.
Ejercicio 2: Modelar gráficamente mediante un diagrama de secuencias la serie de pasos
a seguir para que un cliente pueda transferir un monto determinado de una cuenta a otra.
Transferir un monto de una cuenta a otra
2. Diagramas de Secuencias
cliente:Cliente banco:Banco TabladeCuentas c1:Cuenta c2:Cuenta
transferir(monto,nroC1,nroC2)
c1=seleccionarCuenta(nroC1)
[c1~=nil]
c2=seleccionarCuenta(nroC2)
[c2~=nil]
s1=verSaldo()
[s1>=monto]
extraer(monto)
depositar(monto)
emitirTicket()
[s1<monto]
error(saldo insuficiente)
3. Actividad
1) Realizar el diagrama de clases para representar la siguiente situación:
Una veterinaria tiene información de los animales que se atienden en ella. De cada uno de
ellos se guarda el nombre, su historia clínica, y en algunos casos información del tratamiento
que está siguiendo, etc. Del tratamiento se guarda: fecha de la indicación, duración del
tratamiento, nombre de la enfermedad, nombre del medicamento y dosis indicada.
Cada animal tiene un dueño, que vamos a llamar cliente y un dueño puede tener varios
animales. La veterinaria tiene además un registro de clientes. Cada cliente tiene una cuenta
en la veterinaria y en la cuenta se registran todas las operaciones que realiza el cliente. De
las operaciones se guarda: fecha y monto.
La veterinaria vende tanto remedios como alimentos.
Además, para cada tipo de animal la veterinaria tiene información de las vacunas que le
corresponden de acuerdo a su edad. La veterinaria guarda información de los animales que
vacuna.
La veterinaria tiene además una agenda de turnos para la atención médica de los animales.
2) Realizar el diagrama de secuencia para representar la siguiente
situación: un cliente lleva a su mascota a vacunar a la veterinaria.
clase4-POO-UML.pdf

Más contenido relacionado

Similar a clase4-POO-UML.pdf

Diagramas De Interaccion
Diagramas De InteraccionDiagramas De Interaccion
Diagramas De Interaccionjlrvpuma
 
Diagramas de Interaccion de Objetos
Diagramas de Interaccion de ObjetosDiagramas de Interaccion de Objetos
Diagramas de Interaccion de ObjetosRonny Parra
 
Interaccion en java
Interaccion en javaInteraccion en java
Interaccion en javajent46
 
Copia Uml Xp 02 Ucc
Copia Uml Xp 02 UccCopia Uml Xp 02 Ucc
Copia Uml Xp 02 Uccguest51797f
 
Ambientedeprogramacinenpascal 111015091809-phpapp02
Ambientedeprogramacinenpascal 111015091809-phpapp02Ambientedeprogramacinenpascal 111015091809-phpapp02
Ambientedeprogramacinenpascal 111015091809-phpapp02kevinwm17
 
11 arreglos-multidimensionales
11 arreglos-multidimensionales11 arreglos-multidimensionales
11 arreglos-multidimensionalessandra mendoza
 
11 arreglos-multidimensionales
11 arreglos-multidimensionales11 arreglos-multidimensionales
11 arreglos-multidimensionalesMari Gonzalez
 
DIAGRAMAS DE INTERACCIÓN (SECUENCIA Y COLABORACIÓN)
DIAGRAMAS DE INTERACCIÓN (SECUENCIA Y COLABORACIÓN)DIAGRAMAS DE INTERACCIÓN (SECUENCIA Y COLABORACIÓN)
DIAGRAMAS DE INTERACCIÓN (SECUENCIA Y COLABORACIÓN)BiingeSof
 
Tema capas en autocad
Tema capas en autocadTema capas en autocad
Tema capas en autocadErbil Olivera
 

Similar a clase4-POO-UML.pdf (20)

Diagramas De Interaccion
Diagramas De InteraccionDiagramas De Interaccion
Diagramas De Interaccion
 
Diagramas de Interaccion de Objetos
Diagramas de Interaccion de ObjetosDiagramas de Interaccion de Objetos
Diagramas de Interaccion de Objetos
 
Diagramas de Secuencia.
Diagramas de Secuencia.Diagramas de Secuencia.
Diagramas de Secuencia.
 
Diagramas de Interaccion
Diagramas de InteraccionDiagramas de Interaccion
Diagramas de Interaccion
 
Aplicaciones informaticas libroalumno_unidad8muestra
Aplicaciones informaticas libroalumno_unidad8muestraAplicaciones informaticas libroalumno_unidad8muestra
Aplicaciones informaticas libroalumno_unidad8muestra
 
Diagrama de secuencia UML
Diagrama de secuencia UMLDiagrama de secuencia UML
Diagrama de secuencia UML
 
Uml Xp 02
Uml Xp 02Uml Xp 02
Uml Xp 02
 
Guia practica1
Guia practica1Guia practica1
Guia practica1
 
Interaccion en java
Interaccion en javaInteraccion en java
Interaccion en java
 
Copia Uml Xp 02 Ucc
Copia Uml Xp 02 UccCopia Uml Xp 02 Ucc
Copia Uml Xp 02 Ucc
 
Ambiente
 Ambiente Ambiente
Ambiente
 
Ambiente de programación en pascal
Ambiente de programación en pascalAmbiente de programación en pascal
Ambiente de programación en pascal
 
Ambiente de programacin en pascal
Ambiente de programacin en pascalAmbiente de programacin en pascal
Ambiente de programacin en pascal
 
Ambiente de programación en pascal
Ambiente de programación en pascalAmbiente de programación en pascal
Ambiente de programación en pascal
 
Ambientedeprogramacinenpascal 111015091809-phpapp02
Ambientedeprogramacinenpascal 111015091809-phpapp02Ambientedeprogramacinenpascal 111015091809-phpapp02
Ambientedeprogramacinenpascal 111015091809-phpapp02
 
11 arreglos-multidimensionales
11 arreglos-multidimensionales11 arreglos-multidimensionales
11 arreglos-multidimensionales
 
11 arreglos-multidimensionales
11 arreglos-multidimensionales11 arreglos-multidimensionales
11 arreglos-multidimensionales
 
DIAGRAMAS DE INTERACCIÓN (SECUENCIA Y COLABORACIÓN)
DIAGRAMAS DE INTERACCIÓN (SECUENCIA Y COLABORACIÓN)DIAGRAMAS DE INTERACCIÓN (SECUENCIA Y COLABORACIÓN)
DIAGRAMAS DE INTERACCIÓN (SECUENCIA Y COLABORACIÓN)
 
Tema capas en autocad
Tema capas en autocadTema capas en autocad
Tema capas en autocad
 
Uml Xp 02 Ucc
Uml Xp 02 UccUml Xp 02 Ucc
Uml Xp 02 Ucc
 

Último

CENTROIDES Y MOMENTOS DE INERCIA DE AREAS PLANAS.pdf
CENTROIDES Y MOMENTOS DE INERCIA DE AREAS PLANAS.pdfCENTROIDES Y MOMENTOS DE INERCIA DE AREAS PLANAS.pdf
CENTROIDES Y MOMENTOS DE INERCIA DE AREAS PLANAS.pdfpaola110264
 
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdf
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdfCONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdf
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdfErikNivor
 
Parámetros de Perforación y Voladura. para Plataformas
Parámetros de  Perforación y Voladura. para PlataformasParámetros de  Perforación y Voladura. para Plataformas
Parámetros de Perforación y Voladura. para PlataformasSegundo Silva Maguiña
 
3039_ftg_01Entregable 003_Matematica.pptx
3039_ftg_01Entregable 003_Matematica.pptx3039_ftg_01Entregable 003_Matematica.pptx
3039_ftg_01Entregable 003_Matematica.pptxJhordanGonzalo
 
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdf
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdfCAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdf
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdfReneBellido1
 
COMPONENTES DE LA VIA FERREA UAJMS - BOLIVIA
COMPONENTES DE LA VIA FERREA UAJMS - BOLIVIACOMPONENTES DE LA VIA FERREA UAJMS - BOLIVIA
COMPONENTES DE LA VIA FERREA UAJMS - BOLIVIARafaelPaco2
 
Historia de la Arquitectura II, 1era actividad..pdf
Historia de la Arquitectura II, 1era actividad..pdfHistoria de la Arquitectura II, 1era actividad..pdf
Historia de la Arquitectura II, 1era actividad..pdfIsbelRodrguez
 
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIACLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIAMayraOchoa35
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTFundación YOD YOD
 
CICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaCICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaSHERELYNSAMANTHAPALO1
 
PPT ASISTENCIA TECNICA PRESENTACIÓN FT- ET.pdf
PPT ASISTENCIA TECNICA PRESENTACIÓN FT- ET.pdfPPT ASISTENCIA TECNICA PRESENTACIÓN FT- ET.pdf
PPT ASISTENCIA TECNICA PRESENTACIÓN FT- ET.pdfZamiertCruzSuyo
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfAntonioGonzalezIzqui
 
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptx
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptxAMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptx
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptxLuisvila35
 
Topografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la IngenieríasTopografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la IngenieríasSegundo Silva Maguiña
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPJosLuisFrancoCaldern
 
183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdfEdwinAlexanderSnchez2
 
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAIPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAJAMESDIAZ55
 
Cadenas de Markov investigación de operaciones
Cadenas de Markov investigación de operacionesCadenas de Markov investigación de operaciones
Cadenas de Markov investigación de operacionesal21510263
 
Exposicion. del documentos de YPFB corporación
Exposicion. del documentos de YPFB corporaciónExposicion. del documentos de YPFB corporación
Exposicion. del documentos de YPFB corporaciónjas021085
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Francisco Javier Mora Serrano
 

Último (20)

CENTROIDES Y MOMENTOS DE INERCIA DE AREAS PLANAS.pdf
CENTROIDES Y MOMENTOS DE INERCIA DE AREAS PLANAS.pdfCENTROIDES Y MOMENTOS DE INERCIA DE AREAS PLANAS.pdf
CENTROIDES Y MOMENTOS DE INERCIA DE AREAS PLANAS.pdf
 
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdf
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdfCONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdf
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdf
 
Parámetros de Perforación y Voladura. para Plataformas
Parámetros de  Perforación y Voladura. para PlataformasParámetros de  Perforación y Voladura. para Plataformas
Parámetros de Perforación y Voladura. para Plataformas
 
3039_ftg_01Entregable 003_Matematica.pptx
3039_ftg_01Entregable 003_Matematica.pptx3039_ftg_01Entregable 003_Matematica.pptx
3039_ftg_01Entregable 003_Matematica.pptx
 
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdf
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdfCAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdf
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdf
 
COMPONENTES DE LA VIA FERREA UAJMS - BOLIVIA
COMPONENTES DE LA VIA FERREA UAJMS - BOLIVIACOMPONENTES DE LA VIA FERREA UAJMS - BOLIVIA
COMPONENTES DE LA VIA FERREA UAJMS - BOLIVIA
 
Historia de la Arquitectura II, 1era actividad..pdf
Historia de la Arquitectura II, 1era actividad..pdfHistoria de la Arquitectura II, 1era actividad..pdf
Historia de la Arquitectura II, 1era actividad..pdf
 
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIACLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NIST
 
CICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaCICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresa
 
PPT ASISTENCIA TECNICA PRESENTACIÓN FT- ET.pdf
PPT ASISTENCIA TECNICA PRESENTACIÓN FT- ET.pdfPPT ASISTENCIA TECNICA PRESENTACIÓN FT- ET.pdf
PPT ASISTENCIA TECNICA PRESENTACIÓN FT- ET.pdf
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
 
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptx
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptxAMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptx
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptx
 
Topografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la IngenieríasTopografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la Ingenierías
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
 
183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf
 
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAIPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
 
Cadenas de Markov investigación de operaciones
Cadenas de Markov investigación de operacionesCadenas de Markov investigación de operaciones
Cadenas de Markov investigación de operaciones
 
Exposicion. del documentos de YPFB corporación
Exposicion. del documentos de YPFB corporaciónExposicion. del documentos de YPFB corporación
Exposicion. del documentos de YPFB corporación
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
 

clase4-POO-UML.pdf

  • 1. Programación Orientada a Objetos Clase 4 Continuación - UML PARADIGMAS DE PROGRAMACION UTN - La Plata
  • 2. UML - Lenguaje unificado de modelado 1) Diagrama de clases 2) Diagrama de secuencias 3) Actividad UML - Lenguaje unificado de modelado
  • 3. UML Lenguaje unificado de modelado 1. Diagrama de clases. nombreClase3  atrib4 …….. • mens4() NombreClase1  atrib1  atrib2 • mens1() • mens2() nombreClase2  atrib3 …… • mens3() 2. Diagrama de secuencias. 3. Actividades. UnObj1 unObj2 unObj3 mens.1 (argumentos) mens 2(argumentos) [condición 1] mens 3(argumentos) [condición 2] mens 5() mens 4(argumentos)
  • 4. 1. Diagrama de clases Un diagrama de clases describe: • Los tipos de objetos en el sistema. • Las relaciones estáticas que existen entre ellos. • Los atributos y operaciones de las clases. • Las restricciones a las clases y a sus asociaciones. Un diagrama de clases es un diagrama de estructura estática que describe la estructura de un sistema. Permite modelar sus clases, atributos, operaciones y relaciones entre objetos. Cliente  nroCliente …….. • verNroCliente() …….. Persona  nombre  dirección • verNombre() • modiNombre() • ……. Empleado  cargo …… • sueldo() ……..
  • 5. Componentes básicos de un diagrama de clases 1. Diagrama de clases En UML las clases se representan mediante un rectángulo que puede estar dividido en tres partes. •Sección superior: Contiene el nombre de la clase. •Sección central: Contiene los atributos de la clase. •Sección inferior: Incluye operaciones de clases (métodos), organizadas en un formato de lista. Cada operación requiere su propia línea. Perro  nombre raza colorPelo • come() •guardaHueso() •marcaTerritorio() Nombre Atributos Métodos
  • 6. 1. Diagrama de clases Las relaciones existente entre las distintas clases nos indican cómo se comunican los objetos de esas clases entre sí. Relaciones entre clases Las relaciones más importantes son: a) Asociación: conexión entre clases. b) Herencia: generalización y especialización.
  • 7. a) Asociación: es una relación estructural que describe una conexión entre objetos. 1. Diagrama de clases Cuenta  nro  saldo • depositar() • extraer() • verSaldo() Cliente  nombre  dni  direccion • verNombre() • modiNombre() cuenta 1 titular 1 1 uno y sólo uno 0..1 cero o uno m..n de m a n (enteros naturales) * de cero a varios 0..* de cero a varios 1..* de uno a varios La multiplicidad pueden establecer restricciones de existencia para los objetos de las clases asociadas. Elementos de una asociación: • Nombre • Rol(es) • Multiplicidad
  • 8. 1. Diagrama de clases Agregación y composición: son casos particulares de asociaciones. Muestran la relación entre un todo y sus partes. Gráficamente, se muestran como asociaciones con un rombo en uno de los extremos Agregación: las partes pueden formar parte de distintos agregados. Polígono Punto contiene 0..1 3..*
  • 9. 1. Diagrama de clases Composición: las partes sólo existen asociadas al compuesto, sólo se accede a ellas a través del compuesto. Ventana Cabecera barra 0..1 0..2 Panel ScrollBar 1 título cuerpo 1 1 1
  • 10. 1. Diagrama de clases + General + Específico Moto  cilindrada • verCilindrada() •modiCilindrada() Vehículo nroPatente titular  marca modelo • encender •acelerar() • frenar() Auto  cantPuertas • verPuertas() • modiPuertas b) Herencia: Es el proceso en el que una subclase o clase derivada recibe la funcionalidad de una superclase o clase principal, también se conoce como "generalización".
  • 11. 1. Diagrama de clases Un Banco cuenta con información de las cuentas y de los clientes que maneja. Un cliente del banco tiene la posibilidad de tener o una Caja de Ahorro o una Cuenta Corriente. Ambas cuentas cuentan con la siguiente información: número de cuenta, titular y saldo. Además las Cajas de ahorro guardan información de la cantidad de extracciones que se han realizado en la cuenta, (distintas para cada cuenta) y no permiten giros en descubierto. Las Cuentas corrientes permiten retiros en descubierto pero hasta un cierto límite que es propio de cada una de ellas. De los clientes se conoce el nombre, dirección y DNI. Las operaciones permitidas en ambas cuentas son: depósito de dinero, extracción y consulta de saldo. El banco permite hacer transferencias de una cuenta a otra. Ejercicio 1: Modelar la siguiente situación usando un diagrama de clases.
  • 12. Banco  nombre  dirección • transferir() Cuenta  nro  saldo • depositar() • extraer() • verSaldo() Cliente  nombre  dni  direccion • verNombre() • modiNombre() CajaAhorro  cantExtracciones • extraer() CuentaCorriente  saldoEnRojo • extraer() banco 1 banco 1 cuentas * cuenta 1 titular 1 clientes * Diagrama de clases del Ejercicio 1
  • 13. Un Comercio desea manejar pedidos. De los pedidos se conoce: la fecha en que se recibió el pedido, si fue prepagado, y el precio total. Cada pedido está formado por varios productos. De cada producto se conoce: su código, cantidad y precioUnitario. Cada pedido se relaciona con el cliente correspondiente. Un cliente puede realizar varios pedidos, pero un pedido corresponde a un sólo cliente. El cliente puede ser corporativo o personal. Ambos tienen nombre y dirección y responden a una operación que retorna la calificación del crédito, el cual es “bajo“ si el cliente es personal. Todo cliente corporativo puede relacionarse opcionalmente con un empleado del comercio, que será su representante de ventas, mientras que un empleado puede representar a varios clientes corporativos. Diagrama de clases del Ejercicio 2 Ejercicio 2: Modelar la siguiente situación usando un diagrama de clases.
  • 14. Pedido  fecha recibido  prepagado  precioTotal • despacha() • cierra() Producto  código  cantidad  precioUnitario Cliente  nombre  direccion • calificaciónCrédito() ClienteCorporativo  nombreContacto  calificaciónCrédito  límiteCrédito • facturaciónMes() ClientePersonal  nroTarjetaCrédito pedidos 1 pedido representante de ventas cliente productos 1 * Empleado * 0..1 * Diagrama de clases del Ejercicio 2
  • 15. Diagramas de interacción: Son modelos que describen la manera en que colaboran grupos de objetos para cierto comportamiento. Hay dos tipos de diagramas de interacción: diagramas de secuencia y diagramas de colaboración. En un Diagrama de Secuencias: 2. Diagramas de Secuencias • Un objeto se muestra como caja en la parte superior de una línea vertical punteada. Esta línea vertical se llama línea de vida del objeto y representa la vida del objeto durante la interacción.
  • 16. • Cada mensaje se representa mediante una flecha entre las líneas de vida de los objetos. El orden en el que se dan estos mensajes transcurre de arriba hacia abajo. 2. Diagramas de Secuencias • Cada mensaje es etiquetado por lo menos con el nombre del mensaje. Pueden inclusive agregarse los argumentos y alguna información de control. • Un objeto puede enviarse un mensaje a sí mismo, eso se llama autodelegación. Se representa con una flecha que sale de la línea de vida del objeto y vuelve a la línea de vida del mismo objeto.
  • 17. Información de control: • Condición: el mensaje se envía sólo si la condición es verdadera. Se simboliza con [condición] • Marcador de iteración: un mensaje se envía muchas veces a varios objetos receptores, como sucedería cuando se itera sobre una colección. Se simboliza con *[mensaje] 2. Diagramas de Secuencias • El diagrama puede incluir el regreso de un mensaje, este regreso se representa con una línea punteada. Pueden no representarse.
  • 18. 2. Diagramas de Secuencias Para realizar la operación el cliente le indica al banco la operación a realizar, el monto de la misma, los números de cuenta para poder realizar la transferencia. Con esta información, el banco busca las cuentas con los números ingresados, controla que la operación sea posible y lleva a cabo la operación o devuelve un mensaje de error. Nota: tenga en cuenta que el banco va a interactuar con un objeto ‘tabla’ que contiene todas sus cuentas. Identifique los mensajes que puede recibir ese objeto ‘tabla’. Ejercicio 2: Modelar gráficamente mediante un diagrama de secuencias la serie de pasos a seguir para que un cliente pueda transferir un monto determinado de una cuenta a otra.
  • 19. Transferir un monto de una cuenta a otra 2. Diagramas de Secuencias cliente:Cliente banco:Banco TabladeCuentas c1:Cuenta c2:Cuenta transferir(monto,nroC1,nroC2) c1=seleccionarCuenta(nroC1) [c1~=nil] c2=seleccionarCuenta(nroC2) [c2~=nil] s1=verSaldo() [s1>=monto] extraer(monto) depositar(monto) emitirTicket() [s1<monto] error(saldo insuficiente)
  • 20. 3. Actividad 1) Realizar el diagrama de clases para representar la siguiente situación: Una veterinaria tiene información de los animales que se atienden en ella. De cada uno de ellos se guarda el nombre, su historia clínica, y en algunos casos información del tratamiento que está siguiendo, etc. Del tratamiento se guarda: fecha de la indicación, duración del tratamiento, nombre de la enfermedad, nombre del medicamento y dosis indicada. Cada animal tiene un dueño, que vamos a llamar cliente y un dueño puede tener varios animales. La veterinaria tiene además un registro de clientes. Cada cliente tiene una cuenta en la veterinaria y en la cuenta se registran todas las operaciones que realiza el cliente. De las operaciones se guarda: fecha y monto. La veterinaria vende tanto remedios como alimentos. Además, para cada tipo de animal la veterinaria tiene información de las vacunas que le corresponden de acuerdo a su edad. La veterinaria guarda información de los animales que vacuna. La veterinaria tiene además una agenda de turnos para la atención médica de los animales. 2) Realizar el diagrama de secuencia para representar la siguiente situación: un cliente lleva a su mascota a vacunar a la veterinaria.