Tutorial Visual Paradigm
for UML
Eduardo Len
[Link]
Tutorial Visual Paradigm for UML
CONTENIDO
1.
INTRODUCCIN ................................................................................................................................. 4
2.
POR QU UTILIZAR UML? ............................................................................................................ 5
3.
CASO DE ESTUDIO: MULTICINES XTERIA................................................................................. 6
4.
MODELO DE CASOS DE USO ........................................................................................................... 8
5.
DIAGRAMA DE CLASES .................................................................................................................. 13
6.
DIAGRAMA ENTIDAD-INTERRELACIN .................................................................................. 16
7.
GENERANDO CDIGO Y BASE DE DATOS................................................................................ 19
8.
OTRAS CARACTERSTICAS DE VISUAL PARADIGM ............................................................ 25
[Link]
2 / 25
Tutorial Visual Paradigm for UML
LISTA DE FIGURAS
FIGURA 1. INTERFAZ DE USUARIO DE VISUAL PARADIGM .......................................................... 8
FIGURA 2. NUEVO DIAGRAMA DE CASOS DE USO ............................................................................ 9
FIGURA 3. EDITOR DE DIAGRAMA DE CASOS DE USO. ................................................................... 9
FIGURA 4. BARRA DE HERRAMIENTAS DE DIAGRAMAS DE CASOS DE USO. ........................ 10
FIGURA 5. DIAGRAMA DE CASOS DE USO ......................................................................................... 11
FIGURA 6. DESCRIPCIN DE CASOS DE USO. ................................................................................... 12
FIGURA 7. NUEVO DIAGRAMA DE CLASES ....................................................................................... 13
FIGURA 8. REA DE TRABAJO DE DIAGRAMA DE CLASES ......................................................... 14
FIGURA 9. DIAGRAMA DE CLASES ...................................................................................................... 15
FIGURA 10. SINCRONIZAR DIAGRAMA ENTIDAD-INTERRELACIN ........................................ 16
FIGURA 11. ASIGNACIN DE CAMPO ID A LAS CLASES................................................................ 17
FIGURA 12. DIAGRAMA ENTIDAD-INTERRELACIN ..................................................................... 18
FIGURA 13. GENERACIN DE CDIGO ............................................................................................... 19
FIGURA 14. GENERACIN DE CDIGO. .............................................................................................. 20
FIGURA 15. GENERACIN DE BASE DE DATOS. ............................................................................... 21
FIGURA 16. PARMETROS DE LA BASE DE DATOS. ....................................................................... 22
FIGURA 17. GENERACIN DE CDIGO Y BASE DE DATOS ACABADA...................................... 23
FIGURA 18. CARPETAS GENERADAS. .................................................................................................. 23
FIGURA 19. TABLAS CREADAS AUTOMTICAMENTE................................................................... 24
[Link]
3 / 25
Tutorial Visual Paradigm for UML
1. INTRODUCCIN
En la actualidad, muchos son los desarrollos en los que por falta de tiempo
y/o recursos no se aplican los principios bsicos que aconseja la doctrina de la
Ingeniera del Software.
Debido a la heterogeneidad en el sector de las nuevas tecnologas y al
constante cambio que se producen en tecnologas y sistemas, pocas son las
prcticas de Ingeniera del Software que se afianzan e institucionalizan en la
organizacin. Adems, la falta de herramientas que asistieran la implantacin de
estas prcticas y la poca cobertura que ofrecan las existentes han hecho que el
desarrollo de software fuera considerado por la sociedad una actividad artesanal.
Afortunadamente fabricantes como Microsoft o IBM han apostado fuerte
por el desarrollo de software guiado por modelos orientando as el desarrollo de
software hacia un enfoque ingenieril y disciplinado; en este sentido IBM desarroll
Rational Rose como herramienta CASE1 recomendada para la aplicacin y
seguimiento del Proceso Unificado de Desarrollo.
El presente documento pretende ser una introduccin al uso de una
herramienta CASE para el desarrollo con UML2.
Los objetivos que se persiguen con la lectura de este documento son los
siguientes:
Familiarizacin del desarrollador en entornos CASE.
Adquisicin de destreza en la generacin de cdigo.
Conocer la arquitectura de n-capas.
Explotar la potencia de la orientacin a objetos.
Apreciar las ventajas de usar herramientas CASE en labores de
mantenimiento.
Comprender UML como medio de comunicacin dentro del equipo.
Documentar el ciclo de vida del software.
1
2
CASE: Computer Aided Software Engineering
UML: Unified Modeling Language
[Link]
4 / 25
Tutorial Visual Paradigm for UML
2. POR QU UTILIZAR UML?
Hoy en da, UML est consolidado como el lenguaje estndar en el
anlisis y diseo de sistemas de cmputo. Mediante UML es posible establecer
la serie de requerimientos y estructuras necesarias para plasmar un sistema de
software previo al proceso intensivo de escribir cdigo.
En otros trminos, as como en la construccin de un edificio se realizan
planos previo a su construccin, en Software se deben realizar diseos en UML
previa codificacin de un sistema.
Los beneficios que se consiguen al utilizar UML son varios, por un lado el
uso de lenguajes visuales facilitan su asimilacin y entendimiento por parte del
equipo de desarrollo; el tiempo invertido en el desarrollo de la arquitectura se
minimiza; la deteccin y resolucin de errores se agiliza siempre y cuando se
haga uso de herramientas adecuadas de diagnstico y depuracin; y la
trazabilidad y documentacin del proyecto se realiza de una forma ordenada y
guiada por los casos de uso. Pero si hay una ventaja que destaca sobre todas
las dems es la notable efectividad y productividad que se consigue en labores
de diseo arquitectnico y mantenimiento haciendo uso de UML frente a la
realizacin de las mismas tareas en ausencia de modelos.
En definitiva, implantar metodologas de desarrollo con UML en la
organizacin es una prctica que convierte a los desarrolladores en
profesionales ms competitivos y eficaces en sus proyectos Software.
[Link]
5 / 25
Tutorial Visual Paradigm for UML
3. CASO DE ESTUDIO: MULTICINES XTERIA
Para iniciarnos en el modelado con Visual Paradigm, realizaremos el
anlisis y diseo de un sencillo caso de estudio que nos permitir explorar las
caractersticas de esta herramienta CASE.
Supongamos la siguiente descripcin de nuestro sistema:
Los multicines XTERIA nos han encargado que implementemos una
aplicacin Web que permita la venta de entradas por Internet. XTERIA nos ha
dicho que en sus multicines cuenta con 14 salas, y que en cada sala se
proyecta al da la misma pelcula en tres sesiones distintas. Cada sala tiene
distinto nmero de butacas.
Por otro lado, XTERIA quiere tener registrados a sus clientes para poder
ofrecerles pases VIP a estrenos o eventos que proponga ocasionalmente. El
multicine distingue a sus clientes en dos tipos: clientes VIP y clientes normales.
Los datos necesarios que se han de almacenar para la implementacin
del sistema son los siguientes:
Entidad
Sala
Sesin
Entrada
Campos
ID_Sala : tipo autonumrico
Nmero_Butacas: tipo int
Ttulo_Pelcula: tipo string
ID_Sesin: tipo autonumrico
Hora_Sesin: tipo string
ID_Entrada: tipo autonumrico
Fila: tipo int
[Link]
Descripcin
Se almacena la informacin
correspondiente a una sala del
cine y la pelcula que se
proyecta.
Se almacena la hora de cada
sesin
Se almacena la informacin
referente a la entrada.
6 / 25
Tutorial Visual Paradigm for UML
Cliente
VIP
Cliente
normal
Columna: tipo int
Precio: tipo double
ID_Cliente: tipo autonumrico
Nombre: tipo string
Apellidos: tipo string
E_Mail: tipo string
Nmero_Pases_VIP: tipo int
ID_Cliente: tipo autonumrico
Nombre: tipo string
Apellidos: tipo string
E_Mail: tipo string
Fecha_ltima_Compra: tipo
datetime
Se almacena la informacin de
los clientes VIP del multicine.
Se almacena la informacin
necesaria de los clientes
normales del multicine.
A continuacin, realizaremos los principales diagramas para modelar el
sistema descrito.
[Link]
7 / 25
Tutorial Visual Paradigm for UML
4. MODELO DE CASOS DE USO
Para realizar el diagrama de casos de uso, primeramente crearemos un
proyecto nuevo en Visual Paradigm. Arrancaremos la aplicacin y se nos
mostrar la interfaz de usuario como se muestra en la figura 1.
Figura 1. Interfaz de usuario de Visual Paradigm
En la ventana de la aplicacin se muestra un rbol desplegado al lado
izquierdo con todos los tipos de diagramas de UML que se pueden definir con la
herramienta.
[Link]
8 / 25
Tutorial Visual Paradigm for UML
Sobre los diagramas de tipo Casos de Uso, haremos clic con el botn
derecho del ratn y seleccionamos New Use Case Diagram.
Figura 2. Nuevo diagrama de casos de uso
Se mostrar la ventana de edicin de diagramas de casos de uso.
Figura 3. Editor de diagrama de casos de uso.
[Link]
9 / 25
Tutorial Visual Paradigm for UML
Sobre el lateral izquierdo, seleccionamos los elementos de nuestro diagrama
como los actores del sistema o los globos que definirn cada caso de uso.
Figura 4. Barra de herramientas de Diagramas de Casos de Uso.
Contamos con una completa barra de herramientas para decorar con todo detalle
los diagramas de caso de uso; as por ejemplo, adems de la tpica asociacin
entre casos de uso, disponemos de relaciones de inclusin, extensin,
dependencia y generalizacin para modelar nuestro sistema.
[Link]
10 / 25
Tutorial Visual Paradigm for UML
El diagrama de casos de uso se representa en la figura 5. En dicho
diagrama aparecen los actores de nuestro sistema como el Administrador del
sistema y los diferentes tipos de clientes que heredan caractersticas de un cliente
genrico. Por simplicidad, se muestran los casos de uso ms importantes del
sistema.
Figura 5. Diagrama de casos de uso
[Link]
11 / 25
Tutorial Visual Paradigm for UML
Haciendo clic con el botn derecho sobre cada caso de uso y
seleccionando Open Specification se nos mostrar un formulario donde
podremos aadir informacin ms detallada acerca del caso de uso.
Figura 6. Descripcin de casos de uso.
[Link]
12 / 25
Tutorial Visual Paradigm for UML
5. DIAGRAMA DE CLASES
Un tipo de diagrama de vital importancia para la definicin del sistema es el
diagrama de clases. En este diagrama se representan las entidades de forma
esttica en forma de clases. Una clase puede contener atributos, propiedades y
mtodos.
Para crear un nuevo diagrama de clases, haremos clic sobre el rbol de
diagramas de la izquierda de la ventana y seleccionaremos sobre el tem Class
Diagram e indicaremos la creacin de nuevo diagrama de clases.
Figura 7. Nuevo diagrama de clases
[Link]
13 / 25
Tutorial Visual Paradigm for UML
Una vez creado un nuevo diagrama de clases, se mostrar el rea de trabajo. De
nuevo, contamos con una barra de herramientas en el lado izquierdo con todos
los elementos necesarios para modelar el diagrama de clases.
Figura 8. rea de trabajo de diagrama de clases
En esta barra de herramientas lateral aparecen agrupados los botones por tipo de
elemento; por ejemplo, en el grupo Class podemos hacer clic
sobre la clase bsica o seleccionar alguna clase ya estereotipada
por el sistema.
[Link]
14 / 25
Tutorial Visual Paradigm for UML
Para dibujar el diagrama de clases, utilizaremos las clases estereotipadas
como ORM-Persistable Class ya que las entidades que vamos a incluir han de
ser almacenadas en alguna base de datos. Seguidamente estableceremos las
relaciones existentes entre las entidades como relaciones de herencia o
relaciones de asociacin uno a muchos. El diagrama de clases queda como el
de la figura.
Figura 9. Diagrama de clases
En el diagrama de clases se observa que las clases no contienen un campo ID
para identificar los objetos; en realidad un objeto no requiere informacin extra
para distinguirse unvocamente en el sistema ya que un objeto posee
identificacin implcita por el mero hecho de existir, sin embargo al tratarse de
clases persistentes, deberemos incluir un campo ID para poder almacenar y
recuperar posteriormente el objeto de la base de datos.
[Link]
15 / 25
Tutorial Visual Paradigm for UML
La eleccin del campo de identificacin del objeto la puede realizar el modelador
del sistema o dejar que Visual Paradigm asigne automticamente un campo
autogenerado. En cualquier caso Visual Paradigm necesitar de un campo de
identificacin que de ahora en adelante conoceremos como ORMID 3 para la
gestin de la persistencia de este tipo de clases.
6. DIAGRAMA ENTIDAD-INTERRELACIN
En el diagrama entidad-interrelacin representaremos la estructura que debe
tener la base de datos para almacenar los objetos persistentes del sistema. En
este diagrama conectaremos las entidades haciendo uso de claves ajenas para
mantener la semntica descrita en el diagrama de clases.
Para generar automticamente el diagrama entidad-interrelacin a partir del
diagrama de clases navegaremos por:
Men Tools->Object Relational Mapping (ORM) -> Synchronize to Entity
Relationship Diagram
Figura 10. Sincronizar diagrama entidad-interrelacin
ORMID: Object Relational Mapping ID
[Link]
16 / 25
Tutorial Visual Paradigm for UML
Una vez seleccionada la opcin, se mostrar un formulario en el que se debe
indicar los campos que van a actuar como identificadores de los objetos.
Figura 11. Asignacin de campo ID a las clases
En el formulario aparecen listadas las clases del diagrama de clases y la clave
primaria asociada a cada clase. Por defecto Visual Paradigm autogenerar una
clave primaria para cada clase, o bien, podremos seleccionar uno de los atributos
de la clase para que acte como clave principal.
[Link]
17 / 25
Tutorial Visual Paradigm for UML
Una vez seleccionadas las claves primarias, aceptamos para completar el
proceso. Se mostrar el diagrama entidad-interrelacin como el de la figura.
Figura 12. Diagrama entidad-interrelacin
[Link]
18 / 25
Tutorial Visual Paradigm for UML
7. GENERANDO CDIGO Y BASE DE DATOS
Una vez completada la fase de modelado conceptual del sistema,
procederemos a la generacin automtica del cdigo de las clases persistentes y
la base de datos.
Visual Paradigm hace uso del framework NHIbernate4 para gestionar la
persistencia de los objetos ORM.
Para iniciar la generacin automtica deberemos navegar por el men:
Tools -> Object-Relational Mapping (ORM) -> Generate Code
Figura 13. Generacin de cdigo
NHibernate: framework encargado de gestionar la persistencia. Mapea las clases con su equivalente tabla en
la base de datos. Actualmente tanto NHibernate como su versin para J2EE, Hibernate, son compatibles con
los principales gestores de bases de datos del mercado.
[Link]
19 / 25
Tutorial Visual Paradigm for UML
A continuacin se mostrar el siguiente formulario:
Figura 14. Generacin de cdigo.
En este formulario se parametriza la generacin tanto del cdigo como de la
base de datos. La configuracin de la generacin de cdigo y la base de datos
aparecen en pestaas diferentes. En la pestaa de cdigo podemos seleccionar
el lenguaje de programacin en el que va a generar el cdigo, la versin del
framework en caso de ser un lenguaje .NET e incluso obtener un proyecto de
ejemplo compatible con las versiones 2003 y 2005 de Visual Studio.
[Link]
20 / 25
Tutorial Visual Paradigm for UML
En la pestaa de configuracin de la base de datos deberemos adjuntar la
informacin necesaria referente al gestor de base de datos utilizado, usuario,
contrasea, etc.
Figura 15. Generacin de base de datos.
Para introducir la informacin de la base de datos, deberemos hacer clic en el
botn Database Options.
[Link]
21 / 25
Tutorial Visual Paradigm for UML
Se mostrar el siguiente formulario:
Figura 16. Parmetros de la base de datos.
En este formulario podemos seleccionar uno o varios gestores de bases de
datos en los que crear la base de datos de nuestro sistema. En este punto
deberemos seleccionar el adaptador y driver adecuado para el gestor
seleccionado; en caso de no disponer del driver adecuado, Visual Paradigm se
conectar a Internet y se descargar automticamente la versin ms reciente
para el gestor deseado. Por ltimo y una vez configurada la conexin, es
recomendable realizar una prueba de la conexin haciendo clic en el botn Test
Connection antes de lanzar la creacin de la base de datos.
[Link]
22 / 25
Tutorial Visual Paradigm for UML
Una vez configurada la generacin tanto del cdigo como de la base de
datos, aceptaremos la ejecucin del proceso y si todo ha ido bien, se mostrar el
siguiente dilogo.
Figura 17. Generacin de cdigo y base de datos acabada.
Por ltimo, examinamos los productos generados por la herramienta. El
cdigo generado se habr guardado en el directorio que hayamos indicado
previamente. Automticamente se habrn creado dos carpetas denominadas src
y lib en la que encontraremos cdigo fuente y libreras de NHibernate
respectivamente.
Figura 18. Carpetas generadas.
[Link]
23 / 25
Tutorial Visual Paradigm for UML
Y en el gestor de base de datos comprobamos que se han creado las
tablas satisfactoriamente.
Figura 19. Tablas creadas automticamente.
[Link]
24 / 25
Tutorial Visual Paradigm for UML
8. OTRAS CARACTERSTICAS DE VISUAL PARADIGM
En este tutorial hemos puesto en prctica una de las funcionalidades ms
importantes si cabe de Visual Paradigm como es la generacin de cdigo y la
base de datos a partir de los diagramas UML realizados, pero esta herramienta
aporta ms caractersticas no menos interesantes para el desarrollador como es
la realizacin de Ingeniera Inversa5, generacin automtica de informes en
formato PDF, Word o HTML; generacin de mquinas de estados, integracin con
Visio y Rational Rose, etc.
Para obtener una descripcin ms detallada de estas funcionalidades se invita
al lector a que examine la bibliografa oficial de la herramienta disponible de forma
gratuita en la web: [Link]
Ingeniera Inversa: proceso ingenieril en el que se obtienen modelos conceptuales a partir de los artefactos
software como cdigo fuente, ejecutables, binarios y ficheros intermedios.
[Link]
25 / 25