UML – Diagrama de Clases
-
Upload
cristian-ahumada-carmona -
Category
Documents
-
view
66 -
download
1
description
Transcript of UML – Diagrama de Clases
![Page 1: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/1.jpg)
UML – Diagrama de Clases Asignatura: Lenguajes de Programación Orientado a
Objetos
![Page 2: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/2.jpg)
Introducción
Ernesto Arce Pizarro - Sem I 2013 2
Use Case Diagrams Use Case
Diagrams Diagramas de Casos de Uso
Scenario Diagrams Scenario
Diagrams Diagramas de Colaboración
State Diagrams State
Diagrams Diagramas de Componentes
Component Diagrams Component
Diagrams Diagramas de Distribución
State Diagrams State
Diagrams Diagramas de Objetos
Scenario Diagrams Scenario
Diagrams Diagramas de Estados
Use Case Diagrams Use Case
Diagrams Diagramas de Secuencia
State Diagrams State
Diagrams Diagramas de Clases
Diagramas de Actividad
Modelo
![Page 3: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/3.jpg)
Conceptos Modela los conceptos del dominio de la aplicación. Permite visualizar las relaciones entre las clases que
involucran el sistema Un diagrama de clases está compuesto por los
siguientes elementos: – Clases: atributos, operaciones y visibilidad. – Relaciones: Herencia, Composición, Agregación, Asociación y
Uso. – Responsabilidades
Ernesto Arce Pizarro - Sem I 2013 3
Fuente: Apuntes del sr. Carlos Rodríguez Rojas
![Page 4: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/4.jpg)
Conceptos 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
Ernesto Arce Pizarro - Sem I 2013 4
![Page 5: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/5.jpg)
Conceptos Clase: descripción de un conjunto de objetos
que comparten los mismos atributos, operaciones y relaciones.
Se representa mediante un rectángulo con hasta tres compartimentos: • nombre de la case • lista de atributos • lista de métodos
Ernesto Arce Pizarro - Sem I 2013 5
![Page 6: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/6.jpg)
Conceptos La encapsulación presenta dos ventajas básicas:
– Se protegen los datos de accesos indebidos. – El acoplamiento entre las clases se disminuye. – Favorece la modularidad y el mantenimiento.
Los atributos de una clase no deberían ser manipulables directamente por el resto de objetos
Ernesto Arce Pizarro - Sem I 2013 6
![Page 7: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/7.jpg)
Conceptos
Ernesto Arce Pizarro - Sem I 2013 7 Fuente: Apuntes de la srta. María Antonia Zapata
![Page 8: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/8.jpg)
Clase: El Elemento Principal Es la unidad básica que encapsula toda la
información de un Tipo de Objeto (un objeto es una instancia de una clase).
Ernesto Arce Pizarro - Sem I 2013 8
Fuente: Apuntes del sr. Carlos Rodríguez Rojas
![Page 9: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/9.jpg)
Tipos de Atributos
Los atributos describen a una clase. Pueden ser Públicos, Privados o Protegidos. public (+, ): Indica que el atributo será
visible tanto dentro como fuera de la clase, es decir, es accesible desde todos lados.
Ernesto Arce Pizarro - Sem I 2013 9
Fuente: Apuntes del sr. Carlos Rodríguez Rojas
![Page 10: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/10.jpg)
Tipos de Atributos
private (-, ): Indica que el atributo sólo será accesible desde dentro de la clase (sólo sus métodos lo pueden acceder).
protected (#, ): Indica que el atributo no será accesible desde fuera de la clase, pero si podrá ser accesado por métodos de la clase además de las subclases que se deriven (herencia)
Ernesto Arce Pizarro - Sem I 2013 10 Fuente: Apuntes del sr. Carlos Rodríguez Rojas
![Page 11: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/11.jpg)
Operaciones (Métodos)
Las operaciones o métodos de una clase describen la forma en la cual ésta interactúa con su entorno. Pueden ser Públicas, Privadas o Protegidas. public (+, ): Indica que el método será
visible tanto dentro como fuera de la clase, es decir, es accesible desde todos lados.
Ernesto Arce Pizarro - Sem I 2013 11 Fuente: Apuntes del sr. Carlos Rodríguez Rojas
![Page 12: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/12.jpg)
Operaciones (Métodos) private (-, ): Indica que el método sólo será
accesible desde dentro de la clase (sólo otros métodos de la misma clase lo pueden acceder).
protected (#, ): Indica que el atributo no será accesible desde fuera de la clase, pero si podrá ser accesado por métodos de la clase además de las subclases que se deriven (herencia).
Ernesto Arce Pizarro - Sem I 2013 12 Fuente: Apuntes del sr. Carlos Rodríguez Rojas
![Page 13: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/13.jpg)
Relaciones entre Clases Relación estructural entre las clases. En general es simétrica. Tiene un nombre, que la describe (verbo,
con dirección de lectura) Puede tener un rol que describe el papel
específico que una clase juega en una asociación.
Ernesto Arce Pizarro - Sem I 2013 13 Fuente: Apuntes del sr. Carlos Rodríguez Rojas
![Page 14: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/14.jpg)
Relaciones entre Clases Tiene multiplicidad, que especifica por cada
clase el número de objetos de la clase opuesta que se relacionan con un solo objeto de dicha clase a través de la asociación:
1 : uno 0..1 : cero o uno 3 : tres *: muchos 1..*: al menos uno 2,6,7: dos, seis o siete 2-4, 10-12 : de dos a cuatro y de diez a doce
Ernesto Arce Pizarro - Sem I 2013 14
Fuente: Apuntes del sr. Carlos Rodríguez Rojas
![Page 15: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/15.jpg)
Relaciones entre Clases
Ernesto Arce Pizarro - Sem I 2013 15 Fuente: Apuntes de la srta. María Antonia Zapata
![Page 16: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/16.jpg)
Relaciones entre Clases - Ejemplos Restringe una asociación al número de
objetos que puede relacionarse:
Ernesto Arce Pizarro - Sem I 2013 16
*
* *
Uno a Uno
Uno a Muchos
Muchos a Muchos
Fuente: Apuntes del sr. Carlos Rodríguez Rojas
![Page 17: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/17.jpg)
Rol en las Relaciones
Ernesto Arce Pizarro - Sem I 2013 17
![Page 18: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/18.jpg)
Clase Asociativa
Ernesto Arce Pizarro - Sem I 2013 18 Fuente: Apuntes de la srta. María Antonia Zapata
![Page 19: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/19.jpg)
Clase Asociativa - Ejemplo
Ernesto Arce Pizarro - Sem I 2013 19
![Page 20: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/20.jpg)
Relaciones entre Clases
Ernesto Arce Pizarro - Sem I 2013 20 Fuente: Apuntes de la srta. María Antonia Zapata
![Page 21: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/21.jpg)
Generalización
Ernesto Arce Pizarro - Sem I 2013 21 Fuente: Apuntes de la srta. María Antonia Zapata
![Page 22: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/22.jpg)
Generalización - Clasificaciones
Ernesto Arce Pizarro - Sem I 2013 22
Las restricciones posibles son: complete o incomplete: si todas las instancias de la superclase están en una subclase o no. disjoint o overlapping: si cada instancia de la superclase está en como mucho una
subclase o no
Fuente: Apuntes de la srta. María Antonia Zapata
![Page 23: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/23.jpg)
Tipos de Asociaciones
Ernesto Arce Pizarro - Sem I 2013 23 Fuente: Apuntes de la srta. María Antonia Zapata
![Page 24: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/24.jpg)
Ejemplo
Ernesto Arce Pizarro - Sem I 2013 24 Fuente: Apuntes de la srta. María Antonia Zapata
![Page 25: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/25.jpg)
Ejemplos
Ernesto Arce Pizarro - Sem I 2013 25 Fuente: Apuntes de la srta. María Antonia Zapata
![Page 26: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/26.jpg)
Interfaces Una interfaz es una colección de operaciones que representan
servicios ofrecidos por una clase o componente. Por definición, todas estas operaciones tendrán una
visibilidad pública. La interfaz especifica algo similar a un contrato que la clase se
compromete a respetar. La clase realiza (o suministra una realización de) una o varias
interfaces. UML define dos tipos de interfaces: interfaz suministrada e
interfaz requerida.
Ernesto Arce Pizarro - Sem I 2013 26
![Page 27: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/27.jpg)
Interfaz Suministrada
Ernesto Arce Pizarro - Sem I 2013 27
![Page 28: UML – Diagrama de Clases](https://reader036.fdocumento.com/reader036/viewer/2022082211/55cf8f06550346703b982966/html5/thumbnails/28.jpg)
Interfaz Requerida
Ernesto Arce Pizarro - Sem I 2013 28