Diagrama de clases

De Dos Ideas.
Revisión del 01:54 8 sep 2011 de Adrian (discusión | contribuciones) (Asociación)
(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Saltar a: navegación, buscar

Los diagramas de clase forman parte de la vista estática y muestran los bloques de construcción de cualquier sistema orientado a objetos, y es donde definiremos las características de cada una de las clases, interfaces, colaboraciones y relaciones de dependencia y generalización.

La clase

Una clase esta representada por un rectángulo que dispone de tres partes, la primera de ellas es para indicar el nombre, la segunda para los atributos y la tercera para los métodos.

Cada clase debe tener un nombre único, que las diferencie de las otras.

Un atributo representa alguna propiedad de la clase que se encuentra en todas las instancias de la clase. Los atributos pueden representarse solo mostrando su nombre, mostrando su nombre y su tipo, e incluso su valor por defecto.

Un método o operación es la implementación de un servicio de la clase, que muestra un comportamiento común a todos los objetos.

UML-diagrama de clases - clase.JPG

Relación entre clases

Existen tres relaciones diferentes entre clases, Dependencias, Generalización y Asociación. En las relaciones se habla de una clase destino y de una clase origen. La origen es desde la que se realiza la acción de relacionar. Es decir desde la que parte la flecha, la destino es la que recibe la flecha.

Dependencias

Es una relación de uso, es decir una clase usa a otra, que la necesita para su cometido. Se representa con una flecha discontinua va desde la clase utilizadora a la clase utilizada. Con la dependencia mostramos que un cambio en la clase utilizada puede afectar al funcionamiento de la clase utilizadora, pero no al contrario.

UML-diagrama de clases-dependencia.JPG

Generalización

Un concepto muy importante en diseño orientado a objetos, la herencia, se refiere a la capacidad de una clase (clase hija) para heredar la misma funcionalidad de otra clase (superclase). La herencia indica que una subclase hereda los métodos y atributos especificados por una Super Clase, por ende la Subclase además de poseer sus propios métodos y atributos, poseerá las características y atributos visibles de la Super Clase

UML soporta tanto herencia simple como herencia múltiple.


UML-diagrama de clases - herencia.JPG

Asociación

Especifica que los objetos de una clase están relacionados con los elementos de otra clase. Se representa mediante una línea continua, que une las dos clases. Podemos indicar el nombre, multiplicidad en los extremos, su rol, y agregación.


UML-diagrama de clases-asociacion.JPG

  • Rol: Identifica con nombres a los elementos que aparecen en los

extremos de la línea que denota la relación, dicho nombre describe la semántica que tiene la relación en el sentido indicado.

  • Multiplicidad: La multiplicidad de una relación determina cuantos objetos

de cada tipo intervienen en la relación. Presenta las siguientes características:


MULTIPLICIDAD
SIGNIFICADO
1
Uno y solo uno
0..1
Cero o uno
X..Y
Desde X hasta Y
*
Cero o varios
0..*
Cero o varios
1..*
Uno o varios


  • Cada asociación tiene dos multiplicidades (una para cada extremo de la

relación).Para especificar hay que indicar que la multiplicidad mínima y máxima (mínima...máxima).

  • Cuando la multiplicidad mínima es 0, la relación es opcional
  • Una multiplicidad mínima mayor igual que 1 establece una relación

obligatoria.

Ejemplo de diagrama de clases

UML-diagrama de clases - ejemplo.JPG