relaciones entre clases con uml

6
Relaciones entre clases con UML EN: DISEÑO DE SOFTWARE 23jul2007 Conceptos de la orientación a objetos Los cuatro estereotipos con Color (Modelando en color con UML o Modeling In Color With UML) X Hola Googler! Si estás nuevo por aquí y te gusta lo que ves, puedes disfrutar de una actualización automática y gratuita por RSS para leer nuestros artículos completos cuando lo deseas en tu lector RSS favorito. Entradas relacionadas a "ejemplos de clases utilizando UML en la vida cotidiana ". « Hide related posts Leer y escribir XML con PHP 5.x Galeria de elementos Web Construcción de un sistema MVC simple con PHP5 :: Parte II Asociación Las asociaciones son conexiones conceptuales entre clases. Por ejemplo la asociación, entre trabajador y empresa. “Un trabajador labora en una empresa” la asociación conectara con una línea a trabajador y empresa, si vemos los roles de cada uno podemos decir que el trabajador es un empleado y la empresa es la empleadora. “Labora en” es el nombre de la asociación y la colocamos sobre la linea, mientras que los roles (empleado, empleador) los colocamos bajo la línea a cada lado según corresponda. Así nuestra relación “Un trabajador labora en una empresa” en UML se vería así:

Upload: vrs-serrano

Post on 08-Feb-2016

25 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Relaciones Entre Clases Con UML

Relaciones entre clases con UMLEN: DISEÑO DE SOFTWARE

23jul2007Conceptos de la orientación a objetos Los cuatro estereotipos con Color (Modelando en color con UML o Modeling In Color With UML)

XHola Googler! Si estás nuevo por aquí y te gusta lo que ves, puedes disfrutar de una actualización automática y gratuita por RSS   para leer nuestros artículos completos cuando lo deseas en tu lector RSS favorito.Entradas relacionadas a "ejemplos   de clases utilizando UML en la vida cotidiana ". « Hide related posts

Leer y escribir XML con PHP 5.x Galeria de elementos Web Construcción de un sistema MVC simple con PHP5 :: Parte II

AsociaciónLas asociaciones son conexiones conceptuales entre clases. Por ejemplo la asociación, entre trabajador y empresa.“Un trabajador labora en una empresa” la asociación conectara con una línea a trabajador y empresa, si vemos los roles de cada uno podemos decir que el trabajador es un empleado y la empresa es la empleadora.“Labora en” es el nombre de la asociación y la colocamos sobre la linea, mientras que los roles (empleado, empleador) los colocamos bajo la línea a cada lado según corresponda. Así nuestra relación “Un trabajador labora en una empresa” en UML se vería así:

Las asociaciones pueden funcionar en ambos sentidos. Si vemos el ejemplo anterior desde la perspectiva de la empresa, la asociación sería “Una empresa emplea trabajadores”

Page 2: Relaciones Entre Clases Con UML

Notemos que para comprender el sentido de la asociación añadimos una flecha.Las asociaciones no se limitan conectar una clase con otra, pueden conectarse varias clases con una.

Cuando necesitamos especificar mas detalles en las asociaciones como restricciones podemos especificarlas encerrándolas entre llaves. Por ejemplo un cajero atiende a un cliente, pero cada cliente es atendido en el orden de su llegada.

La restricción del tipo “O” se la representa con una línea entrecortada que una las 2 relaciones. Por ejemplo un estudiante de educación media superior puede elegir entre un curso académico o uno comercial.

MultiplicidadLa multiplicidad indica la cantidad de objetos de una clase que se relacionan con otro objeto en particular de la clase asociada.

Page 3: Relaciones Entre Clases Con UML

En el ejemplo de la relación “Un trabajador labora en una empresa”, aplicando la multiplicidad sería “Uno o varios empleados trabajan en una empresa”. Y el diagramase vería asi:

Notemos que usamos * como comodín para indicar la palabra “varios”Asociaciones calificadasCuando la multiplicidad de una asociación es de uno a muchos, en ocaciones se requiere seleccionar un objeto específico para cumplir la asociación. Para seleccionar el objeto se necesita un identificador que permita diferenciarlo del resto de objetos a este se le llama calificador. Por ejemplo, cuando se realiza una reservacion en un hotel, el hotel le asigna un numero de confirmación. Si se requiere hacer preguntas respecto a la reservacion, se deberá proporcionar el número de confirmacion que en este caso actua como identificador.En UML esto se representa con un rectángulo adjunto a la clase que usará elcalificador.

Asociaciones reflexivasEsta se da cuando una clase se asocia consigo mismo. Por ejemplo en la clase empleado, un empleado puede actuar como jefe o subalterno.

Herencia y generalizaciónLa herencia y generalización son sinónimos dentro de UML.La generalización permite que una clase “hija” herede todos los atributos y propiedades de la clase “madre”. Por ejemplo las clases vertebrados e invertebradospueden heredar de animal.

Page 4: Relaciones Entre Clases Con UML

La representacion de herencia en UML es a través de una línea que termina con un triángulo sin relleno.DependenciasSe define cuando una clase utiliza a otra como parámetro de una de sus operaciones.Por ejemplo imaginemos que tenemos 2 clase una sistema y otra formulario. Una de las operaciones de sistema es mostrarFormulario(), la cual tiene como parámetro la clase formulario, esto se representa en UML así:

AgregaciónUna agregación es una acumulación de clases. Es decir una clase esta formada por otras.Por ejemplo un auto esta formado por su motor, chasis, corrocería entre otras cosas. En UML esto se representaría asi:

Page 5: Relaciones Entre Clases Con UML

ComposiciónUna composición es un tipo de agregación, la cual determina una restricción. Cada componente de una agregacion puede pertenecer tan solo a un todo.Esto se representa de igual forma que una agragacíon, con la diferencia de que el rombo esta rellenadoRealizaciónUna realización es la relación entre una clase y una interfaz.Una interfaz define las capacidades o habilidades de un objeto.Veamos un ejemplo. El teclado de la computadora esta basada en la presión de las teclas de igual forma que el teclado una máquina de escribir. La operación básica (teclazo) es comun para ambos tipos de teclado, sin embargo el teclado de computadora tiene otras opreaciones como ctrl, alt, etc.Podríamos decir que el teclado de la máquina de escribir es una interfaz del teclado de computadora pues define al habilidad de teclazo. Esto en UML se representaría así: