Sunteți pe pagina 1din 28

UT6.

Elaboracin de
diagramas de clase
Entornos de Desarrollo
Ciclo DAW- IES Clara del Rey
Curso 2011 2012

Objetos
Es la representacin de una entidad
Conceptual o real
Con unos lmites definidos
Con un significado dentro del modelo

Cada objeto se caracteriza por


Una identidad propia
Estado (propiedades o atributos)
Comportamiento (mtodos o operaciones)

Ejemplo
Buscar ejemplos de objetos

IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

Diagrama de clases: Definicin

Los diagramas de clases representan un conjunto de elementos del modelo


que son estticos, como las clases y los tipos, sus contenidos y las relaciones
que se establecen entre ellos. Algunos de los elementos que se pueden clasificar
como estticos son los siguientes:

Paquete

Transferencias

Es el mecanismo de que dispone UML para organizar sus elementos en


grupos, se representa un grupo de elementos del modelo. Un sistema es un
nico paquete que contiene el resto del sistema, por lo tanto, un paquete
debe poder anidarse, permitindose que un paquete contenga otro paquete.

Clases

Una clase representa un conjunto de objetos que tienen una estructura, un


comportamiento y unas relaciones con propiedades parecidas. Describe un
conjunto de objetos que comparte los mismos atributos, operaciones,
mtodos, relaciones y significado.

Atributo. Se corresponde con las propiedades de una clase o un tipo.

Operacin o Mtodo: Es un servicio proporcionado por la clase que puede


ser solicitado por otras clases o ser interno y que produce un
comportamiento en ellas cuando se realiza.

IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

CuentaCorriente
banco
oficina
DC
numero
ordenarTransferencia()
adeudo()
reintegro()

Diagrama de clases: Clases

IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

Visibilidad y Alcance

Visibilidad

Public + : Cualquier clase externa con visibilidad hacia la clase


puede utilizar la caracterstica (ya sea atributo o operacin)

protected # : Cualquier descendiente de la clase (subclase)


puede utilizar la caracterstica

private - : Slo se puede utilizar dentro de la misma clase

Alcance

Atributo Static: El valor del atributo es el mismo para todos los


objetos (instancias de la clase)

Mtodo Static: El mtodo se puede invocar sin tener que


instanciar la clase (Ejemplo: Clase Math)

Se representa en el diagrama subrayando la caracterstica

IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

Diagrama de Clases : Relaciones

Las clases se relacionan entre s de distintas formas, que marcan los tipos de relaciones
existentes:

Asociacin: relacin semntica

Composicin: Relacin de composicin

Agregacin: Relacin de pertenencia

Dependencia: Relacin de necesidad

Generalizacin: Relacin taxonmica

IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

Relacin Asociacin

Las clases se relacionan entre s de distintas formas, que marcan los tipos de relaciones existentes:

Asociacin

Es una relacin que describe un conjunto de vnculos entre clases. Pueden ser binarias o n-arias, segn se
implican a dos clases o ms.

Las relaciones de asociacin vienen identificadas por los roles, que son los nombres que indican el
comportamiento que tienen los tipos o las clases, en el caso del rol de asociacin

Es posible indicar el nmero de instancias de una clase que participan en una relacin mediante la llamada
multiplicidad

Una asociacin se dirige desde una clase a otra (o un objeto a otro), el concepto de navegabilidad se refiere
al sentido en el que se recorre la asociacin ( representacin con punta de flecha)

IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

Ejercicio
Representar en un entorno de desarrollo
Un diagrama de clases que represente que un Profesor es
tutor de un conjunto de alumnos y que un alumno slo
tiene un tutor
Del profesor se quiere saber su nombre y del alumno se
quiere saber su nmero de matrcula y el nmero de faltas
que lleva
El tutor puede actualizar el nmero de faltas que tiene el
alumno

Una vez obtenido el diagrama


Generar cdigo java

Indicar en el diagrama que desde el alumno se pueden


obtener navegar hacia el profesor
Observar qu cambia en el cdigo java anterior
IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

Relacin de Generalizacin
Generalizacin
Cuando se establece una relacin de este tipo entre dos
clases, una es una Superclase y la otra es una Subclase.
La subclase comparte la estructura y el comportamiento
de la superclase. Puede haber ms de una clase que se
comporte como subclase.
La subclase:
Hereda las propiedades y mtodos de la superclase
Puede ampliar su comportamiento con ms propiedades o
mtodos
Puede tener su propia implementacin de una operacin de
la superclase (Polimorfismo)
IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

UML. Ejercicio
Se quiere implementar un sistema que permita llevar control de
los profesores y personal auxiliar de servicios (PAS) que trabajan
en el IES Clara del Rey, as como de todos los estudiantes
matriculados.
Para cada profesor, se quiere poder acceder a su nombre,
direccin,edad, ao de ingreso y salario que cobra.
Para cada PAS, se quiere poder acceder a su nombre,
direccin, edad, ao de ingreso y salario que cobra.
Para cada estudiante, se quiere poder acceder a su nombre,
direccin, edad, ao de ingreso y nmero de matrcula.
Representarlo en un entorno de desarrollo observando el cdigo
java que se genera

IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

10

Solucin Ejercicio
Clases

Mtodos

Generalizacin

IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

11

Relacin Composicin y Agregacin

Composicin
y
agregacin
son
asociaciones en que un objeto es parte del
otro

Agregacin
Se representa con un rombo hueco en
la clase cuya instancia es una
Es una asociacin especializada por el
cual un Todo se relaciona con sus
partes
Tambin se el suele llamar parte de

Composicin

Es una variedad ms fuerte de


agregacin en que la parte no puede
existir si no existe el Todo
Se representa con un rombo lleno en la
clase cuya instancia contiene las
instancias de la otra clase.

Ejemplo: Cine, ventanilla de ventas y


pelcula

La ventanilla no existe si el cine se


destruye, pero no ocurre as con la pelcula

IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

12

Relacin de Dependencia

Dependencia
Dependencia es una asociacin
entre clases donde, si cambias
una de ellas, has de cambiar la
otra
En el ejemplo, si cambias Co_op
has de cambiar Company tambin

Restriccin
Condicin que ha de satisfacer la
implementacin
En el ejemplo se indica que la
Section ser parte de
CourseSchedule slo si no se ha
cancelado la seccin

IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

13

Relacin de Dependencia

Dependencia

Un elemento del modelo necesita a otro para su implementacin o especificacin

El cambio en uno puede afectar al otro

Va ms ligada a operaciones entre clases

Una clase utiliza otra como argumento de sus operaciones

Tambin se encuentran dependencias entre paquetes

Si un paquete A depende de un paquete B, entonces hay una o ms clases en el paquete A que


inician comunicacin con una o ms clases pblicas del paquete B

IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

14

Estereotipo

Estereotipo

Un estereotipo representa una la meta-clasificacin de un elemento.


Un estereotipo es una nueva clase de elemento de modelado con la
misma estructura que un elemento existente pero con restricciones
adicionales
Ejemplo
Un estereotipo aade semntica a aquello a lo que estamos estereotipando,
es decir, a un componente UML que representa a un fichero:
Le podemos aadir un estereotipo. El aadrselo no cambia que sea un
componente, pero le aade un sentido ms concreto y nos permite entender
mejor que tipo de componente es

Persona.mdb

IES Clara del Rey

<<Database>>
Persona.mdb

UT6. Elaboracin de diagramas de Clase

15

Estereotipo: Interfaz

Interfaz
Una interfaz se representa como una
caja con compartimentos, igual que las
clases. En la zona superior se incluye el
nombre y el estereotipo <<Interface>>
con letra itlica. La lista de operaciones
se coloca en la zona inferior, igual que en
las representaciones de clases. La zona
en la que se listan los atributos estar
vaca o puede omitirse
Las operaciones son simplemente una
enumeracin. Se implementarn en la
clase que use la interfaz. En java
Implements
Tambin pueden representarse con una
circunferencia en cuyo caso no aparecen
la lista de operaciones
Una interfaz es un tipo especial de
Estereotipo
IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

16

Diagrama de Clases. Clase Asociacin


Es posible aadir a las asociaciones e incluso operaciones
relacionndolas con clases que contienen dicha informacin

IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

17

Clase abstracta y Clase Final


Clase abstracta (abstract)

Se representa por un nombre en cursiva


La clase abstracta no se puede instanciar
Puede tener mtodos implementados
Ejemplo
Mamfero vs Persona
Nadie dice por ah va un mamfero pero s menuda persona

Clase Final (Final)


No permite que haya subclases

IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

18

Diagrama de clases. Ejemplo

IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

19

Ejercicio
Modelar el diagrama de clases
Una aplicacin necesita almacenar informacin sobre
empresas, empleados y clientes
Ambos se caracterizan por su nombre y edad
Los empleados tienen un sueldo bruto. Los empleados
que son directivos tienen una categora as como un
conjunto de empleados subordinados
De los clientes adems se necesita conocer su telfono de
contacto
La aplicacin necesita mostrar los datos de los empleados
y los clientes

IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

20

Solucin
Posible solucin

IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

21

Ingeniera inversa
Permite obtener el diagrama de clases a partir del
cdigo fuente

IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

22

Ejercicio
Biblioteca
Una biblioteca tiene copias de libros. El libro se
caracteriza por su nombre, tipo (novela, teatro, poesa,
ensayo), editorial, ao y autor
Los autores se caracterizan por su nombre, nacionalidad y
fecha de nacimiento
Cada copia tiene un identificador y puede estar en la
biblioteca, prestada , con retraso o en reparacin
Los lectores pueden tener un mximo de 3 libros en
prstamo
Cada libro se presta por un mximo de 30 das, por cada
da de retraso se impone una multa de dos das sin la
posibilidad de coger un nuevo libro
Realiza el diagrama de clases y aade los mtodos
necesarios para realizar el prstamo y devolucin de libros
IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

23

Solucin
Posible solucin

IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

24

Ejercicio
Redes de ordenadores
Especificar un diagrama de clases que describa redes de
ordenadores
Los elementos que se pueden incluir en la red son
Servidor, PC, Impresora
Hub, Cable de red

Los PCs pueden conectarse con un nico Hub, los


servidores con uno o varios
Los servidores y pcs pueden generar mensajes, con
cierta longitud
Los hubs tienen un nmero de puertos, alguno de los
cuales pueden usarse para conectar con otros hubs.
Tienen cierta probabilidad de perder mensajes
Las impresoras pueden averiarse, con cierta probabilidad,
durante cierto tiempo
IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

25

Solucin
Posible solucin

IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

26

Ejercicio
Realizar el diagrama de clases que permita implementar
el juego del parchs.

IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

27

Referencias

http://www.uml.org
Metrica v3
Uml Gota a Gota
Online tutorial Borland
http://dn.codegear.com/article/31863

IES Clara del Rey

UT6. Elaboracin de diagramas de Clase

28

S-ar putea să vă placă și