Diagrama de clases
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.
Contenido
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.
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.
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.
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.
- 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.