SlideShare una empresa de Scribd logo
1 de 24
INTERACCIÓN
ENTRE CLASES,
HERENCIA
FERNANDO SOLIS
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
Diseño de Sistemas Orientados a Objetos
• Diagramas de Clases
 El Diagrama de Clases es el diagrama principal para el
análisis y diseño.
 Un diagrama de clases presenta las clases del sistema con
sus relaciones estructurales y de herencia.
 La definición de clase incluye definiciones para atributos y
operaciones.
 El modelo de casos de uso aporta información para
establecer las clases, objetos, atributos y operaciones.
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
 El mundo real puede ser visto desde abstracciones
diferentes (subjetividad)
 Mecanismos de abstracción:
 Clasificación / Instanciación
 Composición / Descomposición
 Agrupación / Individualización
 Especialización / Generalización
 La clasificación es uno de los mecanismos de abstracción
más utilizados
• Diagramas de Clases - Clasificación
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
 Los enlaces entre objetos pueden representarse entre las
respectivas clases
 Formas de relación entre clases:
 Asociación y Agregación (vista como un caso particular de
asociación)
 Generalización/Especialización
 Las relaciones de Agregación y Generalización forman
jerarquías de clases
• Diagramas de Clases - Relaciones
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
 La clase define el ámbito de definición de un conjunto de
objetos
 Cada objeto pertenece a una clase
 Los objetos se crean por instanciación de las clases
• Diagramas de Clases
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
• Diagramas de Clases - Notación Gráfica
 Cada clase se representa en un rectángulo con tres
compartimientos:
 nombre de la clase
 atributos de la clase
 operaciones de la clase
Motocicleta
color
cilindrada
velocidad máxima
arrancar()
acelerar()
frenar()
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
lista
primero()
ultimo()
añadir()
quitar()
cardinalidad()
pila
apilar()
desapilar()
cardinalidad()
• Diagramas de Clases - Notación Gráfica
 Otros ejemplos:
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
• Diagramas de Clases - Notación Gráfica
 Atributo: Generalmente son de tipos simples, ya que los
atributos de tipos compuestos se representan mediante
asociaciones de composición con otras clases.
 La sintaxis de un atributo es:
 nombre = valor_inicial {propiedad}
 donde:
nombre: si comienza con minúscula se considera un atributo de
objeto.
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
• Diagramas de Clases - Notación Gráfica
 Asociación: expresa una conexión bidireccional entre
objetos
 Una asociación es una abstracción de la relación existente
en los enlaces entre los objetos
Universidad Estudiante
Una asociación
Univ. de Murcia : Universidad Antonio : EstudianteUn enlace
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
• Diagramas de Clases - Notación Gráfica
 Una asociación, en general, es una línea que une dos o más
símbolos. Pueden tener varios tipos de adornos, que
definen su semántica y características.
 Los tipos de asociaciones entre clases presentes en un
diagrama de clases son:
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
 Asociación binaria: se identifica como una línea sólida que une
dos clases. Representa una relación de algún tipo entre las dos
clases, que no exige dependencia existencial ni encapsulamiento.
Ejemplo:
• Diagramas de Clases - Notación Gráfica
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
• Diagramas de Clases - Notación Gráfica
 Asociación n-aria: es una forma de expresar una relación entre
tres o más clases. Se representa como un diamante del cual salen
líneas de asociación a las clases. Ejemplo:
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
• Diagramas de Clases - Notación Gráfica
 Agregación: al comienzo de la línea que simboliza una
asociación se puede ubicar un rombo que simbolice una
asociación de composición o agregación compuesta (rombo
ennegrecido), lo que ocurre cuando la entidad determina la
existencia de la otra, o bien el concepto de agregación compartida
(rombo blanco), si los objetos pueden existir más allá de la
asociación. Ejemplo:
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
• Diagramas de Clases - Notación Gráfica
 Generalización: la relación de generalización denota una
relación de herencia entre clases. Se representa dibujando un
triángulo sin rellenar en el lado de la superclase. La subclase
hereda todos los atributos y mensajes descritos en la superclase.
Ejemplo:
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
• Diagramas de Clases - Notación Gráfica
 Ejemplo:
Compañía
nombre
dirección
Persona
nombre
s.s.
0..1
*
jefe 0..1
Administra
empleado
*
0..1
0..1
mujer
0..1
casado-con
marido
0..1
*
* trabaja-para
*emplea-a
*
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
 Cada asociación puede presentar algunos elementos
adicionales que dan detalle a la relación, como son:
 Multiplicidad: describe la cardinalidad de la asociación. Cada
asociación tiene, en ambos sentidos, una multiplicidad: 1 indica
una ocurrencia; * indica 0 o más ocurrencias; 1..* señala una o
más; 1..40 indica de 1 a 40 ocurrencias; 3,5,8 indica que hay 3 ó 5
u 8 ocurrencias . Ejemplo:
• Diagramas de Clases - Notación Gráfica
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
 Especificación de multiplicidad (mínima...máxima)
1 Uno y sólo uno
0..1 Cero o uno
M..N Desde M hasta N (enteros naturales)
* Cero o muchos
0..* Cero o muchos
1..* Uno o muchos (al menos uno)
 La multiplicidad mínima >= 1 establece una restricción de
existencia
• Diagramas de Clases - Notación Gráfica
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
 Nombre: describe el significado de la relación; se agrega al
nombre una punta de flecha que indica en qué sentido se debe leer
la frase para interpretarla adecuadamente. Ejemplo:
• Diagramas de Clases - Notación Gráfica
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
• Diagramas de Clases - Notación Gráfica
 Rol: identificado como un nombre al final de la línea, describe la
semántica de la relación en el sentido indicado. Ejemplo:
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
• Diagramas de Clases - Notación Gráfica
 Atributos: como consecuencia de una relación puede necesitarse
almacenar cierta información de detalle. Ésta se denota como una
clase relacionada por una línea punteada a la relación. Ejemplo:
considerar una relación entre Muro y Ventana, la cual tiene como
detalle un objeto de la clase Posición; cabe notar que este objeto no
podría tomarse como atributo de ninguna de las clases anteriores,
ya que el contexto de su existencia está dado precisamente por la
relación entre las dos clases.
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
• Diagramas de Clases - Notación Gráfica
 Obvservación (comentario, nota): Es un comentario dentro de un
diagrama, es decir aclaraciones a éste. Puede estar relacionado con
uno o más elementos en el diagrama mediante líneas punteadas. Se
representa mediante un rectángulo con su borde superior derecho
doblado..
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
• Diagramas de Clases - Ejemplos
Window
scrollbar[2] : Slider
title : Header
body : Panel
Slider Header
Window
1
2
1
2
scrollbar
1
1
1
1title
Panel
1
1
1
1body
 Asociación:
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
• Diagramas de Clases - Ejemplos
Person Committee** **
Member-of
1 *1 *Chair-of
{ subset }
{Person.employer =
Person.boss.employer}
Represents an
incorporated entity.
CompanyPerson
*
0..1
worker
*
boss
0..1
0..1
*
employer
0..1
employee
*
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML
• Diagramas de Clases - Ejemplos
Asociación excluyente
Clase de asociación
Agregación
Persona
Cuenta
*
*
*
*
Empresa
1
*
1
*
or
Polígono Punto1
3..*
1
3..*
{ordenado}
contiene
EstaciónUsuario
** **
Autorización
prioridad
privilegios
camb_privil()
está-autorizado-en

Más contenido relacionado

La actualidad más candente (17)

Diseño de Clases
Diseño de ClasesDiseño de Clases
Diseño de Clases
 
Diag de clases
Diag de clasesDiag de clases
Diag de clases
 
Lenguajes de Programación: Herencia, Polimorfismo Y UML
Lenguajes de Programación: Herencia, Polimorfismo Y UMLLenguajes de Programación: Herencia, Polimorfismo Y UML
Lenguajes de Programación: Herencia, Polimorfismo Y UML
 
Modelamiento con uml definiciones
Modelamiento con uml definicionesModelamiento con uml definiciones
Modelamiento con uml definiciones
 
Diagrama de clases
Diagrama de clasesDiagrama de clases
Diagrama de clases
 
Diagrama de clases
Diagrama de clasesDiagrama de clases
Diagrama de clases
 
Trabajo2
Trabajo2Trabajo2
Trabajo2
 
UML - Casos de Uso y Diagramas de Clase
UML - Casos de Uso y Diagramas de ClaseUML - Casos de Uso y Diagramas de Clase
UML - Casos de Uso y Diagramas de Clase
 
Exposición Diagrama de Clases
Exposición Diagrama de ClasesExposición Diagrama de Clases
Exposición Diagrama de Clases
 
D clase
D claseD clase
D clase
 
Diagramas de clases
Diagramas de clasesDiagramas de clases
Diagramas de clases
 
Diagrama de clases
Diagrama de clasesDiagrama de clases
Diagrama de clases
 
Diagrama de clases
Diagrama de clasesDiagrama de clases
Diagrama de clases
 
Uml relaciones
Uml relacionesUml relaciones
Uml relaciones
 
Diagramas UML
Diagramas UMLDiagramas UML
Diagramas UML
 
encuesta
encuestaencuesta
encuesta
 
DIAGRAMA DE CLASES
DIAGRAMA DE CLASESDIAGRAMA DE CLASES
DIAGRAMA DE CLASES
 

Similar a INTERACCIÓN ENTRE CLASES, HERENCIAS (20)

UT5 - Introduccion al lenguaje unificado UML.pdf
UT5 - Introduccion al lenguaje unificado UML.pdfUT5 - Introduccion al lenguaje unificado UML.pdf
UT5 - Introduccion al lenguaje unificado UML.pdf
 
UML.pptx
UML.pptxUML.pptx
UML.pptx
 
Diagramas de clase.pptx
Diagramas de clase.pptxDiagramas de clase.pptx
Diagramas de clase.pptx
 
Diagrama de clases
Diagrama de clasesDiagrama de clases
Diagrama de clases
 
Concepto diagramas de clases
Concepto diagramas de clasesConcepto diagramas de clases
Concepto diagramas de clases
 
Diagramas de uml
Diagramas de umlDiagramas de uml
Diagramas de uml
 
Diagramas del uml
Diagramas del umlDiagramas del uml
Diagramas del uml
 
Diagramas del uml
Diagramas del umlDiagramas del uml
Diagramas del uml
 
Diagramas del uml
Diagramas del umlDiagramas del uml
Diagramas del uml
 
Diagramas del uml
Diagramas del umlDiagramas del uml
Diagramas del uml
 
diagramas_del_uml.pdf
diagramas_del_uml.pdfdiagramas_del_uml.pdf
diagramas_del_uml.pdf
 
Diagramas Analisis
Diagramas AnalisisDiagramas Analisis
Diagramas Analisis
 
INTRODUCCION UML
INTRODUCCION UMLINTRODUCCION UML
INTRODUCCION UML
 
Introducion uml
Introducion umlIntroducion uml
Introducion uml
 
Introducción al Diagrama de Clases UML
Introducción al Diagrama de Clases UMLIntroducción al Diagrama de Clases UML
Introducción al Diagrama de Clases UML
 
Diagrama de clases UML
Diagrama de clases UMLDiagrama de clases UML
Diagrama de clases UML
 
U1 s3 introducción a uml parte 1
U1 s3 introducción a uml parte 1U1 s3 introducción a uml parte 1
U1 s3 introducción a uml parte 1
 
Introducción a la progrogramación orientada a objetos - UML
Introducción a la progrogramación orientada a objetos - UMLIntroducción a la progrogramación orientada a objetos - UML
Introducción a la progrogramación orientada a objetos - UML
 
Unidad2
Unidad2Unidad2
Unidad2
 
Unidad2
Unidad2Unidad2
Unidad2
 

Más de mellcv

Asp .net
Asp .netAsp .net
Asp .netmellcv
 
Eventos
EventosEventos
Eventosmellcv
 
ARREGLOS EN JAVA, VECTORES Y MATRICES
ARREGLOS EN JAVA, VECTORES Y MATRICESARREGLOS EN JAVA, VECTORES Y MATRICES
ARREGLOS EN JAVA, VECTORES Y MATRICESmellcv
 
Arquitectura basada en componentes
Arquitectura basada en componentesArquitectura basada en componentes
Arquitectura basada en componentesmellcv
 
Desarrollo de software basado en componentes
Desarrollo de software basado en componentesDesarrollo de software basado en componentes
Desarrollo de software basado en componentesmellcv
 
Programacion orientada a componentes
Programacion orientada a componentesProgramacion orientada a componentes
Programacion orientada a componentesmellcv
 
PAQUETES EN JAVA
PAQUETES EN JAVAPAQUETES EN JAVA
PAQUETES EN JAVAmellcv
 
EXCEPCIONES JAVA
EXCEPCIONES JAVAEXCEPCIONES JAVA
EXCEPCIONES JAVAmellcv
 
Programacion orientada a objetos 2
Programacion orientada a objetos 2Programacion orientada a objetos 2
Programacion orientada a objetos 2mellcv
 
Programacion orientada a objetos 1
Programacion orientada a objetos 1Programacion orientada a objetos 1
Programacion orientada a objetos 1mellcv
 
MODIFICADORES Y METODOS DE ACCESO
MODIFICADORES Y METODOS DE ACCESOMODIFICADORES Y METODOS DE ACCESO
MODIFICADORES Y METODOS DE ACCESOmellcv
 
INSTANCIAS Y CONSTRUCTORES EN JAVA
INSTANCIAS Y CONSTRUCTORES EN JAVAINSTANCIAS Y CONSTRUCTORES EN JAVA
INSTANCIAS Y CONSTRUCTORES EN JAVAmellcv
 
ENTORNO DE DESARROLLO, ESTRUTURA GENERAL DE UN PROGRAMA
ENTORNO DE DESARROLLO, ESTRUTURA GENERAL DE UN PROGRAMAENTORNO DE DESARROLLO, ESTRUTURA GENERAL DE UN PROGRAMA
ENTORNO DE DESARROLLO, ESTRUTURA GENERAL DE UN PROGRAMAmellcv
 
Lenguaje de programacion java, conceptos
Lenguaje de programacion java, conceptosLenguaje de programacion java, conceptos
Lenguaje de programacion java, conceptosmellcv
 
Principios fundamentales de la programación orientado a objetos
 Principios fundamentales de la programación orientado a objetos  Principios fundamentales de la programación orientado a objetos
Principios fundamentales de la programación orientado a objetos mellcv
 
Introduccion al lenguage java
Introduccion al lenguage javaIntroduccion al lenguage java
Introduccion al lenguage javamellcv
 
Programar aplicaciones windows forms
Programar aplicaciones windows formsProgramar aplicaciones windows forms
Programar aplicaciones windows formsmellcv
 

Más de mellcv (20)

Asp .net
Asp .netAsp .net
Asp .net
 
Asp
AspAsp
Asp
 
Eventos
EventosEventos
Eventos
 
ARREGLOS EN JAVA, VECTORES Y MATRICES
ARREGLOS EN JAVA, VECTORES Y MATRICESARREGLOS EN JAVA, VECTORES Y MATRICES
ARREGLOS EN JAVA, VECTORES Y MATRICES
 
Arquitectura basada en componentes
Arquitectura basada en componentesArquitectura basada en componentes
Arquitectura basada en componentes
 
Poc 2
Poc 2Poc 2
Poc 2
 
Desarrollo de software basado en componentes
Desarrollo de software basado en componentesDesarrollo de software basado en componentes
Desarrollo de software basado en componentes
 
Poc
PocPoc
Poc
 
Programacion orientada a componentes
Programacion orientada a componentesProgramacion orientada a componentes
Programacion orientada a componentes
 
PAQUETES EN JAVA
PAQUETES EN JAVAPAQUETES EN JAVA
PAQUETES EN JAVA
 
EXCEPCIONES JAVA
EXCEPCIONES JAVAEXCEPCIONES JAVA
EXCEPCIONES JAVA
 
Programacion orientada a objetos 2
Programacion orientada a objetos 2Programacion orientada a objetos 2
Programacion orientada a objetos 2
 
Programacion orientada a objetos 1
Programacion orientada a objetos 1Programacion orientada a objetos 1
Programacion orientada a objetos 1
 
MODIFICADORES Y METODOS DE ACCESO
MODIFICADORES Y METODOS DE ACCESOMODIFICADORES Y METODOS DE ACCESO
MODIFICADORES Y METODOS DE ACCESO
 
INSTANCIAS Y CONSTRUCTORES EN JAVA
INSTANCIAS Y CONSTRUCTORES EN JAVAINSTANCIAS Y CONSTRUCTORES EN JAVA
INSTANCIAS Y CONSTRUCTORES EN JAVA
 
ENTORNO DE DESARROLLO, ESTRUTURA GENERAL DE UN PROGRAMA
ENTORNO DE DESARROLLO, ESTRUTURA GENERAL DE UN PROGRAMAENTORNO DE DESARROLLO, ESTRUTURA GENERAL DE UN PROGRAMA
ENTORNO DE DESARROLLO, ESTRUTURA GENERAL DE UN PROGRAMA
 
Lenguaje de programacion java, conceptos
Lenguaje de programacion java, conceptosLenguaje de programacion java, conceptos
Lenguaje de programacion java, conceptos
 
Principios fundamentales de la programación orientado a objetos
 Principios fundamentales de la programación orientado a objetos  Principios fundamentales de la programación orientado a objetos
Principios fundamentales de la programación orientado a objetos
 
Introduccion al lenguage java
Introduccion al lenguage javaIntroduccion al lenguage java
Introduccion al lenguage java
 
Programar aplicaciones windows forms
Programar aplicaciones windows formsProgramar aplicaciones windows forms
Programar aplicaciones windows forms
 

Último

PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptAlberto Rubio
 
La Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalLa Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalJonathanCovena1
 
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdf
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdfFICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdf
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdfRaulGomez822561
 
Louis Jean François Lagrenée. Erotismo y sensualidad. El erotismo en la Hist...
Louis Jean François Lagrenée.  Erotismo y sensualidad. El erotismo en la Hist...Louis Jean François Lagrenée.  Erotismo y sensualidad. El erotismo en la Hist...
Louis Jean François Lagrenée. Erotismo y sensualidad. El erotismo en la Hist...Ars Erótica
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesMarisolMartinez707897
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOluismii249
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docxEliaHernndez7
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxiemerc2024
 
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdfPROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdfEduardoJosVargasCama1
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfapunteshistoriamarmo
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Juan Martín Martín
 
Desarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por ValoresDesarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por ValoresJonathanCovena1
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfMercedes Gonzalez
 
TRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPC
TRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPCTRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPC
TRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPCCarlosEduardoSosa2
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxFernando Solis
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primariaWilian24
 
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...JAVIER SOLIS NOYOLA
 

Último (20)

PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
 
La Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalLa Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración Ambiental
 
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdf
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdfFICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdf
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdf
 
Louis Jean François Lagrenée. Erotismo y sensualidad. El erotismo en la Hist...
Louis Jean François Lagrenée.  Erotismo y sensualidad. El erotismo en la Hist...Louis Jean François Lagrenée.  Erotismo y sensualidad. El erotismo en la Hist...
Louis Jean François Lagrenée. Erotismo y sensualidad. El erotismo en la Hist...
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtuales
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
 
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdfPROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdf
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
Desarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por ValoresDesarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por Valores
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
 
TRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPC
TRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPCTRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPC
TRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPC
 
Los dos testigos. Testifican de la Verdad
Los dos testigos. Testifican de la VerdadLos dos testigos. Testifican de la Verdad
Los dos testigos. Testifican de la Verdad
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
 
Power Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptxPower Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptx
 
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
 

INTERACCIÓN ENTRE CLASES, HERENCIAS

  • 2. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML Diseño de Sistemas Orientados a Objetos • Diagramas de Clases  El Diagrama de Clases es el diagrama principal para el análisis y diseño.  Un diagrama de clases presenta las clases del sistema con sus relaciones estructurales y de herencia.  La definición de clase incluye definiciones para atributos y operaciones.  El modelo de casos de uso aporta información para establecer las clases, objetos, atributos y operaciones.
  • 3. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML  El mundo real puede ser visto desde abstracciones diferentes (subjetividad)  Mecanismos de abstracción:  Clasificación / Instanciación  Composición / Descomposición  Agrupación / Individualización  Especialización / Generalización  La clasificación es uno de los mecanismos de abstracción más utilizados • Diagramas de Clases - Clasificación
  • 4. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML  Los enlaces entre objetos pueden representarse entre las respectivas clases  Formas de relación entre clases:  Asociación y Agregación (vista como un caso particular de asociación)  Generalización/Especialización  Las relaciones de Agregación y Generalización forman jerarquías de clases • Diagramas de Clases - Relaciones
  • 5. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML  La clase define el ámbito de definición de un conjunto de objetos  Cada objeto pertenece a una clase  Los objetos se crean por instanciación de las clases • Diagramas de Clases
  • 6. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML • Diagramas de Clases - Notación Gráfica  Cada clase se representa en un rectángulo con tres compartimientos:  nombre de la clase  atributos de la clase  operaciones de la clase Motocicleta color cilindrada velocidad máxima arrancar() acelerar() frenar()
  • 7. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML lista primero() ultimo() añadir() quitar() cardinalidad() pila apilar() desapilar() cardinalidad() • Diagramas de Clases - Notación Gráfica  Otros ejemplos:
  • 8. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML • Diagramas de Clases - Notación Gráfica  Atributo: Generalmente son de tipos simples, ya que los atributos de tipos compuestos se representan mediante asociaciones de composición con otras clases.  La sintaxis de un atributo es:  nombre = valor_inicial {propiedad}  donde: nombre: si comienza con minúscula se considera un atributo de objeto.
  • 9. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML • Diagramas de Clases - Notación Gráfica  Asociación: expresa una conexión bidireccional entre objetos  Una asociación es una abstracción de la relación existente en los enlaces entre los objetos Universidad Estudiante Una asociación Univ. de Murcia : Universidad Antonio : EstudianteUn enlace
  • 10. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML • Diagramas de Clases - Notación Gráfica  Una asociación, en general, es una línea que une dos o más símbolos. Pueden tener varios tipos de adornos, que definen su semántica y características.  Los tipos de asociaciones entre clases presentes en un diagrama de clases son:
  • 11. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML  Asociación binaria: se identifica como una línea sólida que une dos clases. Representa una relación de algún tipo entre las dos clases, que no exige dependencia existencial ni encapsulamiento. Ejemplo: • Diagramas de Clases - Notación Gráfica
  • 12. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML • Diagramas de Clases - Notación Gráfica  Asociación n-aria: es una forma de expresar una relación entre tres o más clases. Se representa como un diamante del cual salen líneas de asociación a las clases. Ejemplo:
  • 13. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML • Diagramas de Clases - Notación Gráfica  Agregación: al comienzo de la línea que simboliza una asociación se puede ubicar un rombo que simbolice una asociación de composición o agregación compuesta (rombo ennegrecido), lo que ocurre cuando la entidad determina la existencia de la otra, o bien el concepto de agregación compartida (rombo blanco), si los objetos pueden existir más allá de la asociación. Ejemplo:
  • 14. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML • Diagramas de Clases - Notación Gráfica  Generalización: la relación de generalización denota una relación de herencia entre clases. Se representa dibujando un triángulo sin rellenar en el lado de la superclase. La subclase hereda todos los atributos y mensajes descritos en la superclase. Ejemplo:
  • 15. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML • Diagramas de Clases - Notación Gráfica  Ejemplo: Compañía nombre dirección Persona nombre s.s. 0..1 * jefe 0..1 Administra empleado * 0..1 0..1 mujer 0..1 casado-con marido 0..1 * * trabaja-para *emplea-a *
  • 16. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML  Cada asociación puede presentar algunos elementos adicionales que dan detalle a la relación, como son:  Multiplicidad: describe la cardinalidad de la asociación. Cada asociación tiene, en ambos sentidos, una multiplicidad: 1 indica una ocurrencia; * indica 0 o más ocurrencias; 1..* señala una o más; 1..40 indica de 1 a 40 ocurrencias; 3,5,8 indica que hay 3 ó 5 u 8 ocurrencias . Ejemplo: • Diagramas de Clases - Notación Gráfica
  • 17. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML  Especificación de multiplicidad (mínima...máxima) 1 Uno y sólo uno 0..1 Cero o uno M..N Desde M hasta N (enteros naturales) * Cero o muchos 0..* Cero o muchos 1..* Uno o muchos (al menos uno)  La multiplicidad mínima >= 1 establece una restricción de existencia • Diagramas de Clases - Notación Gráfica
  • 18. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML  Nombre: describe el significado de la relación; se agrega al nombre una punta de flecha que indica en qué sentido se debe leer la frase para interpretarla adecuadamente. Ejemplo: • Diagramas de Clases - Notación Gráfica
  • 19. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML • Diagramas de Clases - Notación Gráfica  Rol: identificado como un nombre al final de la línea, describe la semántica de la relación en el sentido indicado. Ejemplo:
  • 20. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML • Diagramas de Clases - Notación Gráfica  Atributos: como consecuencia de una relación puede necesitarse almacenar cierta información de detalle. Ésta se denota como una clase relacionada por una línea punteada a la relación. Ejemplo: considerar una relación entre Muro y Ventana, la cual tiene como detalle un objeto de la clase Posición; cabe notar que este objeto no podría tomarse como atributo de ninguna de las clases anteriores, ya que el contexto de su existencia está dado precisamente por la relación entre las dos clases.
  • 21. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML • Diagramas de Clases - Notación Gráfica  Obvservación (comentario, nota): Es un comentario dentro de un diagrama, es decir aclaraciones a éste. Puede estar relacionado con uno o más elementos en el diagrama mediante líneas punteadas. Se representa mediante un rectángulo con su borde superior derecho doblado..
  • 22. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML • Diagramas de Clases - Ejemplos Window scrollbar[2] : Slider title : Header body : Panel Slider Header Window 1 2 1 2 scrollbar 1 1 1 1title Panel 1 1 1 1body  Asociación:
  • 23. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML • Diagramas de Clases - Ejemplos Person Committee** ** Member-of 1 *1 *Chair-of { subset } {Person.employer = Person.boss.employer} Represents an incorporated entity. CompanyPerson * 0..1 worker * boss 0..1 0..1 * employer 0..1 employee *
  • 24. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS UTILIZANDO UML • Diagramas de Clases - Ejemplos Asociación excluyente Clase de asociación Agregación Persona Cuenta * * * * Empresa 1 * 1 * or Polígono Punto1 3..* 1 3..* {ordenado} contiene EstaciónUsuario ** ** Autorización prioridad privilegios camb_privil() está-autorizado-en