No es un bug, es una característica no documentada

22/4/15

Entornos de desarrollo. UML Designer en Eclipse

11:09 Posted by Inazio 2 comments
Para trabajar con diagramas UML en Eclipse necesitaremso instalar el pluggin UML Designer.
Yo estoy trabajando con Eclipse Luna, así que voy al Market Place de Eclipse para descargar el programa.

Enlace al market place: http://marketplace.eclipse.org/content/uml-designer-eclipse-luna-version

Arrastramos el botón que pone Install hacía el Eclipse y comenzará la instalación.


Nos pedirá reiniciar y veremos una ventana similar a la siguiente:


Para volver a la pantalla por defecto del Eclipse basta con pulsar en el botón que he rodeado con rojo.

Bien, ahora, para crear nuestro nuevo proyecto, vamos a File - New - Project - UML Designer - UML Project



Le damos un nombre al proyecto y pulsamos finalizar, llegando a ver el siguiente DashBoard


Vamos a elegir Class Diagram, por ejemplo, ya que con Eclipse es el único que hemos visto de momento. Hacemos doble clic sobre el nombre y se abrirá una nueva ventana


Los elementos UML los arrastraremos a la parte izquieda desde el menú de la derecha. Tenemos varias opciones


Bueno, los tipos están claros. Si queremos usar un paquete, interfaz, clase... todo ello se hace en la opción Types.
Features serán las configuraciones de los tipos anteriores. Me lo salto, ya que haciendo doble clic sobre un elemento ya importado a la parte izquierda, conseguiremos acceder al mismo panel de características pero de forma más clara y rápida.

Ahora, en las relaciones... Vemos que tenemos varias opciones disponibles y desplegables.
Si vamos a Association nos encontramos con todas estas opciones:


Las que nos interesa, que serán Composition y Aggregation. La diferencia fundamental entre ambas opciones es la forma en la que un objeto tiene contenido a otro, en un sentido abstracto de posición.

Está muy bien explicado en la siguiente página web: http://www.seas.es/blog/informatica/agregacion-vs-composicion-en-diagramas-de-clases-uml/

Adjunto una imagen comparativa de ambas, pero recomiendo la lectura del enlace anterior


La opción Association Class nos permitirá crear una clase intermedia entre dos clases relacionadas, por ejemplo entre las clases Producto y Ticket tendremos la clase LineasTicket que reflejará cada precio del total de productos comprados, así como la cantidad de unidades (es un decir).

Después de las asociaciones, también tenemos la opción de Generalization


que será usada para las herencias entre clases (aunque no hay que olvidar de poner protected en las clases que vayan a dar esa herencia. Es decir, en la clase Animal la propiedad sexo será protected, y la heredará la clase Gato).

Si importamos una nueva clase, al hacer doble clic sobre ella nos permitirá configurarla, cuando se abra la siguiente ventana


En General configuramos el nombre de la clase.
En Attributes, las propiedades de la clase.


Pulsamos en el signo + para añadir nuevo atributo, yendo a parar a la siguiente ventana:


Simplemente elegimos el nombre del atributo y su visibilidad. Lo ideal para definir el tipo sería pulsar en Type - + y elegir el que nos interese, pero como da ciertos problemas para Java y salen opciones tales que EString en vez de String, puedes optar para, en el propio nombre de la propiedad, escribirlo. La estructura será:

nombreDelAtributo: TipoDelAtributo

y se pulsa Finish.

Para los métodos (u operaciones) de la clase el paso es el mismo. Vamos a la pestaña


y pulsamos en + para añadir. Iremos a la siguienet pantalla


Escribimos el nombre del método y su visibilidad, y en caso de que se necesite pasarle algún parámetro, lo elegimos yendo a la pestaña Parameters, que los pasos a seguir serán como añadirle un nuevo atributo, visto anteriormente.

Una vez finalizado, un ejemplo de clase quedaría tal que así:


Las propiedades se indican con el rectangulo, y en esquina inferior derecha su visibilidad:

  • - : private
  • + : public
  • #: protected
Y los métodos se indican con el engranaje.

Eso sería una pequeña aproximación a UML Designer en Eclipse Luna.

¡Hasta otra!

2 comentarios:

  1. amigo y si lo hice a travez de codigo y ahora quiero obtener en modo UML..ya que es inverso como lo hago?

    ResponderEliminar
  2. Con UML Designer no lo recuerdo ahora mismo, lo tendría que mirar, pero puedes usar la versión gratuita de eUML2. Una vez que lo instales sobre el paquete del que quieres generar el diagrama haces clic en el botón derecho - eUML2 - Class diagram editor. Eliges los paquetes y las clases que quieres mostrar en tu diagrama y pulsas Finish.
    Verás que automáticamente te lo genera.
    Para la instalación sigue estos pasos: http://luauf.com/2008/07/21/ingenieria-inversa-con-eclipse/

    ResponderEliminar