Herramienta de modelado de software UML

Altova UModel es una herramienta fundamental para garantizar el éxito de cualquier proyecto de desarrollo de software.

Altova UModel es una potente y sencilla herramienta UML para diseñar software de forma visual. Diseñe modelos de aplicaciones con UML de forma visual y genere código Java, C++, C# o Visual Basic .NET, así como documentación de proyecto. Convierta programas en diagramas UML mediante ingeniería inversa, mejórelos y termine el proceso regenerando el código de programa.

Modelado UML con UModel

Altova UModel es una herramienta fundamental para garantizar el éxito de cualquier proyecto de desarrollo de software.

Altova UModel es una potente y sencilla herramienta UML para diseñar software de forma visual. Diseñe modelos de aplicaciones con UML de forma visual y genere código Java, C++, C# o Visual Basic .NET, así como documentación de proyecto. Convierta programas en diagramas UML mediante ingeniería inversa, mejórelos y termine el proceso regenerando el código de programa.

¿Qué ventajas ofrece UModel frente a otras herramientas de modelado UML?

UModel es una herramienta UML asequible que combina una rica interfaz visual con avanzadas funciones como ingeniería de código, intercambio de modelos XMI, compatibilidad con BPM, etc.

¿Qué dicen nuestros clientes?

“Estoy muy contento con UModel. Por fin una herramienta de modelado con UML que es asequible y que funciona como a mí me gusta.”

Jashan Chittesh, Desarrollador de juegos autónomo

“UModel es impresionante para trabajar con UML.”

Doug Holland, Precision Objects

Modelado visual e intuitivo para todo tipo de diagramas UML

Con UModel el usuario tiene sus vistas y herramientas favoritas al alcance de la mano nada más iniciar la aplicación, lo que aumenta su productividad y eficiencia. Además, puede personalizar todos los aspectos de los diagramas creados con UModel: su tamaño, posición, color, tipos de fuente, estilos de línea, etc.

Modelado UML intuitivo con Altova UModel

Compatible con los 14 tipos de diagramas UML

UModel es compatible con los 14 tipos de diagramas de arquitectura de software UML 2.5, con diagramas de tipo UML para esquemas XML y con las tablas de las principales bases de datos SQL.

Requisitos del proyecto:

Los diagramas de casos de uso a veces se entienden como un tipo de diagrama de arquitectura de software diferente porque captan los requisitos del proyecto y pueden definir el ámbito de una aplicación que está en desarrollo.

Diagramas de estructura UML:

Diagramas de comportamiento UML:

Es improbable que se utilicen todos los tipos de diagramas en un mismo proyecto: el modelado de software permite un nivel de flexibilidad en preferencias y estilos y las diferentes tareas del proyecto requieren diferentes tipos de diagramas. Independientemente de los diagramas que cree con UModel, su incomparable interfaz visual y sus prácticas funciones le facilitarán al máximo las tareas de modelado.

Características de modelado visual:

  • Barra de herramientas especial para cada tipo de diagrama
  • Codificación por colores y prácticos iconos
  • Ayudantes de entrada y botones de edición rápida
  • Estilos en cascada (colores, fuentes...)
  • Cuadrícula de alineación personalizable
  • Barra de herramienta de diseño para controlar el tamaño de los elementos, su alineación, etc.
  • Permite asignar elementos a diferentes capas del diagrama, que se pueden ver u ocultar
  • Número ilimitado de operaciones de deshacer/rehacer

Desde la ventana de estilos de UModel puede acceder fácilmente a todas las opciones de visualización y modificar elementos, un grupo de elementos o una categoría entera. También puede elegir los colores del menú desplegable o asignar colores personalizados a los elementos, ya sea uno por uno, por grupos y familias o a todo el proyecto.

UModel ofrece flexibles opciones de diseño para organizar los modelos de la manera más lógica y clara posible. La cuadrícula de alineación sirve de base a la hora de colocar elementos en el diagrama. Mientras crea elementos nuevos o mueve elementos por el panel de dibujo, aparecen líneas visuales que le ayudan a alinear los elementos con los demás elementos del diagrama.

Cada tipo de diagrama cuenta con una barra de herramientas propia. Estas barras de herramientas y sus etiquetas de texto se pueden activar o desactivar.

UModel incluye un número ilimitado de operaciones deshacer/rehacer para que no tenga miedo a probar nuevas ideas.

Ayudantes de entrada

Los ayudantes de entrada de UModel están a la izquierda de la ventana principal y asisten al usuario mientras crea sus modelos, los visualiza y navega por ellos. Los ayudantes se llaman Estructura del modelo, Árbol de diagramas y Favoritos.

UModel también ofrece las ventanas de acceso rápido Propiedades, Estilos, Jerarquía y Vista general, que le ayudarán a navegar por diagramas de gran tamaño.

En UModel puede añadir hipervínculos en cualquier elemento de sus diagramas UML. Puede crear hipervínculos a archivos externos, direcciones web e incluso otros diagramas del proyecto. La descripción que introduzca aquí aparecerá como mensaje emergente al pasar el ratón por el hipervínculo.

Capas de diagramas

En UModel puede crear varias capas en un diagrama. Cada elemento se puede asignar a una capa y las capas se pueden bloquear para evitar cambios.

Ventana de vista general

La ventana de vista general ofrece una vista reducida que identifica qué porción del diagrama puede verse en el panel principal. Se trata de una herramienta de navegación rápida para trabajar con diagramas complejos que no caben en el panel principal. Basta con hacer clic dentro de la ventana y navegar por el diagrama.

Generar código fuente a partir de modelos UML

UModel incluye un generador de código integrado que crea código Java, C++, C# o Visual Basic .NET a partir de los diagramas de clases, de secuencia y de máquina de estados de su modelo UML. Gracias a ello podrá olvidarse de escribir código de infraestructura de nivel inferior y podrá concentrarse en la lógica de negocio y en la arquitectura global de su proyecto.

UModel genera código fuente a partir de modelos UML

Con las funciones de generación de código fuente de UModel puede acelerar la fase de implementación de su proyecto y evitar errores no deseados, que suelen producirse al escribir código a mano y que quitan mucho tiempo a la hora de depurarlos.

Generación de código para versiones diferentes de los lenguajes de programación

El generador de código de UModel se basa en la misma tecnología utilizada por XMLSpy y MapForce. Los perfiles de Java que vienen con la aplicación generan código basado en los estándares Java compatible con Eclipse, Borland® JBuilder® y otros entornos de desarrollo de Java. Los perfiles para C++ son compatibles con Visual Studio y los perfiles para C# generan código para Microsoft® Visual C# .NET®, Borland® C#Builder® y otros entornos de desarrollo de C#. Los perfiles para Visual Basic .NET generan código VB.

UModel es compatible con genéricos de C#, destacados por su robusta comprobación de tipos y creación de instancias en tiempo de ejecución. También admite el uso de las nuevas construcciones introducidas en C# 3.0 y VB9.0, que son directamente compatibles con XML. UModel es compatible con los argumentos con nombre, los parámetros opcionales, la programación dinámica, y los conceptos de covarianza y contravarianza introducidos en C# 4.0 durante operaciones de ingeniería de ida y vuelta, importación de archivos binarios y generación de diagramas de secuencia.

UModel admite además el uso de enumeraciones de Java, lo cual permite definir con facilidad colecciones donde todos los elementos tienen el mismo tipo y detectar en tiempo de compilación los errores de tipo en estas colecciones.

Para garantizar la calidad del código, UModel incluye un corrector de sintaxis que le ayudará a detectar errores o incoherencias en los diagramas para que no se reproduzcan en el código.

Generar clases del código fuente a partir de diagramas de clases

UModel crea código Java, C++, C# o Visual Basic .NET a partir de las clases de su modelo UML. Gracias a ello podrá olvidarse de escribir código de infraestructura de nivel inferior y podrá concentrarse en la lógica de negocio y en la arquitectura global de su proyecto.

Con las funciones de generación de código fuente de UModel puede acelerar la fase de implementación de su proyecto y evitar errores no deseados, que suelen producirse al escribir código a mano y que quitan mucho tiempo a la hora de depurarlos.

Código fuente a partir de diagramas de secuencia

Con UModel los desarrolladores pueden generar código a partir de diagramas de secuencia para métodos que describen operaciones de clase. El usuario puede insertar cuerpos de código completos en diagramas de secuencia y crear una aplicación ejecutable entera sin tener que editar el código a mano.

Puede generar código fuente a partir de diagramas de secuencia UML nuevos al aplicar ingeniería directa a un diseño nuevo; puede actualizar código existente al revisar diagramas de secuencia a los que se aplicó ingeniería inversa; y puede aplicar ingeniería de ida y vuelta para sincronizar cambios posteriores en el código fuente o en los diagramas de secuencia de su modelo UML.

UModel permite generar código compatible con los lenguajes Java, C++, C# y Visual Basic a partir de diagramas de secuencia.

Creación de operaciones en clases con referencia

Al añadir un mensaje nuevo a una línea de vida que representa una clase, puede asignarle un nombre o elegir una operación de la clase de destino en la ventana Propiedades.

Con “Creación automática de operaciones” puede crear una operación nueva en la clase de destino con solo teclear el nombre del mensaje nuevo.

Posibilidad de generar código a partir de diagramas de máquina de estados

UModel permite generar código totalmente ejecutable a partir de diagramas de máquina de estados para que pueda empezar a probar la lógica reflejada en su diagrama de máquina de estados.

Puede generar código siguiendo el proceso normal de generación de código de proyecto, que se puede iniciar desde el menú Proyecto o directamente desde el menú contextual del diagrama de máquina de estados.

El menú contextual de UModel incluye también una opción para revisar la sintaxis del diagrama de la máquina de estados y así asegurarse de que el código generado es válido.

En el cuadro de diálogo "Generar código de la máquina de estados" podrá configurar la generación de código e incluso especificar si el código se debe volver a generar automáticamente cuando se genere código de proyecto.

Transiciones y operaciones de clases

Cuando añada una transición nueva a un diagrama que esté dentro de una clase o interfaz, puede usar la lista desplegable de la ventana Propiedades para asignarle una operación de la clase de destino.

Con la opción “Creación automática de operaciones” podrá crear una operación nueva en la clase de destino con solo teclear el nombre del mensaje nuevo.

Ejemplo de máquina de estados ejecutable

Los archivos de muestra que se instalan con UModel incluyen también archivos de solución de Visual Studio para C# y Visual Basic, y una aplicación de pruebas Java que muestran la ejecución del código de la máquina de estados. Estos archivos y la aplicación de prueba se pueden adaptar con facilidad y se pueden utilizar con otros diagramas de máquina de estados.

Transformación de código en modelos UML mediante ingeniería inversa

UModel incluye la posibilidad de aplicar la ingeniería inversa y leer código fuente Java, C#, C++, Visual Basic y archivos binarios y generar modelos UML para una representación visual mucho más clara y fácil de analizar que el código de programa basado en texto.

Aplique ingeniería inversa a una aplicación para modelarla o para empezar un proyecto nuevo importando bibliotecas de clases ya existentes.

Ingeniería inversa de código fuente

UModel puede importar archivos de código fuente Java desde proyectos de JBuilder, Eclipse y NetBeans, código fuente C++ de Microsoft Visual Studio, código fuente C# a partir de Visual Studio y Borland C# y archivos de proyecto de Visual Basic .NET.

Puede importar un solo directorio, un árbol de directorio o un proyecto entero. Asimismo, puede elegir entre combinar el código importado con el proyecto de UModel o crear un proyecto nuevo.

Si importa código fuente Java que venga acompañado de JavaDocs, la ventana de documentación de UModel puede rellenarse para cada diagrama UML. También puede importar DocComments de C# y Visual Basic .NET como documentación para su proyecto de modelado.

Las funciones de ingeniería inversa de código Visual Basic .NET de UModel son orientadas a líneas y no hacen distinción entre mayúsculas y minúsculas (es decir no diferencia entre Class1, CLASS1, class1 y ClAsS1), de acuerdo con los requisitos de denominación de Visual Basic .NET, que no son tan rigurosos.

Ingeniería inversa de archivos binarios

UModel puede importar archivos binarios de Java, C++, C# y Visual Basic .NET. Para Java, la importación de tipos es compatible con todos los archivos de clases que se ajusten a la especificación de la máquina virtual Java.

Para C#, la importación de tipos es compatible con los ensamblados destinados a .NET Framework, .NET Core y .NET Compact Framework para PocketPC, Smartphone y WindowsCE. Para Visual Basic .NET, se pueden importar archivos DLL y EXE del sistema de archivos o ensamblados del caché global de ensamblados (GAC) o desde una referencia MSVS.NET.

Dependiendo de los requisitos de los binarios que seleccione el cuadro de diálogo ofrece más o menos opciones de configuración. La ayuda integrada de UModel le guiará en el proceso de importación de archivos binarios.

Reverse Engineer Existing Code with UModel

Generar diagramas de secuencia UML tras la ingeniería inversa

Con UModel puede generar diagramas de secuencia a partir de archivos de código fuente a los que se aplicó ingeniería inversa para convertirlos en clases UML.

También puede dividir automáticamente los diagramas de secuencia de gran tamaño y crear hipervínculos entre ellos.

Ingeniería de ida y vuelta

A medida que crece su proyecto deberá ir modificando la base original del código fuente generado. Para ello trabajará directamente en el código fuente Java, C++, C# o Visual Basic .NET con su entorno IDE preferido. Con las funciones de ingeniería de ida y vuelta de UModel se puede leer el código modificado y después actualizar automáticamente los diagramas UML. Esto permite sincronizar el modelo con el código.

UModel no exige el uso de comentarios especiales ni pseudocódigo en el código fuente para completar correctamente la operación de ingeniería de ida y vuelta. Por ello su código puede estar libre de artefactos que dificulten su lectura o edición.

La función de ingeniería de ida y vuelta de UModel es compatible con procesos de desarrollo iterativo. Después de sincronizar su modelo con el código actualizado puede decidir si hace más cambios directamente en el código o en el modelo. Después puede sincronizarlos de nuevo y repetir este ciclo todas las veces que quiera.

Al igual que el resto de funciones de UModel, la función de ingeniería de ida y vuelta permite un número ilimitado de operaciones deshacer/rehacer. Así podrá experimentar todo lo que quiera con las opciones del cuadro de diálogo, sabiendo que puede restaurar el modelo a su versión anterior con un solo clic.

Sincronización automática de modelo y código

La integración de UModel en entornos IDE permite un proceso de ingeniería de ida y vuelta aún más sofisticado. Cuando utilice UModel Enterprise Edition dentro de Microsoft® Visual Studio .NET® o de Eclipse, podrá abrir el proyecto de UModel en una ventana y el código de aplicación asociado en otra ventana en un editor de código fuente.

Round Trip Engineering with UModel

Puede sincronizar el modelo UML con los cambios realizados en el código fuente o sincronizar el código fuente con los cambios realizados en el modelo UML. Gracias a ello podrá comprobar inmediatamente el impacto de las correcciones realizadas, ya sea en el modelo o directamente en el código fuente.

Esquemas XML en UML

UModel incluye un tipo especial de diagrama y funciones de ingeniería de código para esquemas XML. El diagrama de esquema XML de UModel presenta esquemas XML en un formato similar al de los diagramas de clases UML, mostrando los elementos globales (elementos element, simpleType y complexType) como clases y los atributos de los elementos en un compartimento de atributos.

Diagramas de tipo UML para esquemas XML en Altova UModel

Para mostrar los detalles del esquema UModel se sirve de notas UML. El esquema XML se trata como si fuera código fuente de aplicación y se le aplica ingeniería inversa para crear un proyecto de UModel. El archivo de proyecto y los diagramas que contiene son un modelo del esquema XML y no el esquema propiamente dicho.

Puesto que el proyecto de UModel y el esquema XML propiamente dicho son archivos distintos, el modelo UML del esquema constituye un nivel de abstracción entre el diseño del esquema y el archivo XSD. Esto permite a los desarrolladores trabajar en equipos y mejorar los esquemas en equipo con solo modificar el proyecto de UModel, tratando el modelo UML como prototipo. Si se realizan cambios en el modelo del esquema XML, estos mismos cambios se escriben en el archivo de esquema XML (*.xsd) durante la generación de código o sincronización de proyecto.

En UModel también puede aplicar ingeniería de ida y vuelta a los archivos de esquema XML. Si el esquema se modifica fuera de UModel, puede sincronizar el proyecto de UModel y el diagrama XML con los cambios realizados.

Desarrollo de esquemas XML

Si en su proyecto necesita diseñar un esquema XML nuevo, puede usar las potentes funciones de edición y validación de esquemas de Altova XMLSpy, el entorno de desarrollo XML de referencia.

Por ejemplo, uno de los desarrolladores del equipo puede trabajar en el esquema con XMLSpy y los demás pueden sincronizar sus modelos aplicando ingeniería de ida y vuelta al archivo XSD. Si en su proyecto necesita diseñar un esquema XML nuevo, puede usar las potentes funciones de edición y validación de esquemas de Altova XMLSpy, el entorno de desarrollo XML de referencia.

Diagramas de bases de datos UML

Dado que las aplicaciones de software interactúan con cantidades de datos cada vez mayores, las estructuras y el diseño de bases de datos son una parte fundamental de los proyectos de desarrollo de software. Con UModel puede importar tablas de BD relacionales para crear diagramas de base de datos UML, modificar diagramas de tablas de datos ya existentes y generar scripts de cambios SQL para sincronizar la base de datos. También puede diseñar tablas y relaciones de BD nuevas desde cero y generar scripts CREATE SQL.

Diagramas de base de datos UML en Altova UModel

También puede importar una BD relacional entera en un solo paso o seleccionar solo las tablas de la BD que más le interesen.

Los diagramas de base de datos de UModel son compatibles con varias bases de datos y son capaces de acomodar dialectos SQL, tipos de datos y otras características propias de cada tipo de base de datos. UModel admite estos elementos de base de datos: esquemas, tablas, vistas, restricciones de comprobación, claves primarias, foráneas y únicas, índices, procedimientos almacenados, funciones, desencadenadores, asociaciones de relación entre BD y relaciones entre BD con atributos.

Documentación de proyectos en UModel

La documentación es un factor importante del desarrollo de software. UModel acelera las tareas de documentación generando automáticamente archivos de documentación de proyecto en formato HTML, Microsoft Word o RTF.

Gracias al diseño integrado de documentación de proyectos de UModel puede personalizar la documentación. Seleccione el formato de salida y las opciones de procesamiento de imagen y personalice la documentación según sus requisitos. También puede seleccionar en qué detalle se documenta cada elemento. Por ejemplo, puede incluir diagramas de jerarquías para ilustrar las relaciones entre las clases.

Genere documentación de proyecto UML personalizada con Altova UModel

UModel añade hipervínculos dentro de la documentación para que sea más fácil navegar por ella. También se añaden automáticamente hipervínculos a los archivos de código fuente generados. Gracias al diseño integrado de documentación de UModel también podrá controlar el aspecto de la documentación del proyecto, especificando el estilo y tamaño de la fuente de cada bloque de texto.

Documentación de proyecto personalizada y automatizada

Si necesita personalizar aún más la documentación, puede usar una hoja de estilos SPS y Altova StyleVision creará una copia totalmente personalizada de la documentación de su proyecto UML.

UModel viene con una hoja de estilos de muestra para la documentación. Puede usar esta hoja de estilos tal y como está o editarla en StyleVision de acuerdo con sus requisitos. La hoja de estilos permite incrustar imágenes en su documentación de proyecto UML (como el logotipo de la compañía), encabezados y pies de página y bloques de texto estándar. La documentación basada en hojas de estilos también se puede generar en PDF.

Resumiendo, puede seleccionar una hoja de estilos en UModel y enviar instrucciones de ejecución directamente a StyleVision para crear su propio diseño de forma automatizada.

Modelado SysML

UModel ofrece funciones de modelado SysML™ para sistemas y dispositivos complejos.

Cuando un sistema integrado recibe datos de entrada y produce datos de salida, las operaciones y estados internos pueden ser opacos. Por ello desarrollar, probar y depurar software que controle sistemas integrados puede ser difícil. El modelado de software con Altova UModel y SysML permite crear un prototipo fácil de seguir y muy práctico a la hora de planificar, diseñar y documentar el sistema que se está desarrollando.

Modelado SysML con Altova UModel

Hay tres tipos de diagramas SysML: los que muestran los requisitos y las limitaciones físicas del sistema, los que ilustran su estructura y los que describen su comportamiento. UModel es compatible con todos los diagramas y extensiones SysML:

  • Diagrama de requisitos SysML
  • Diagrama de casos de uso SysML
  • Diagrama de definición de bloques SysML
  • Diagrama de bloque interno SysML
  • Diagrama paramétrico SysML
  • Diagrama de paquetes SysML
  • Diagrama de actividades SysML
  • Diagrama de secuencia SysML
  • Diagrama de máquina de estados SysML

Notación de modelado de procesos de negocio (BPMN)

Dado el crecimiento en las comunicaciones entre diferentes actividades económicas, es cada vez más necesario tener un sistema de modelado estándar. Este estándar debe ser entendido fácilmente por gran variedad de usuarios en todos los niveles de las organizaciones y al mismo tiempo debe ser capaz de representar procesos de negocios complejos que afecten a varias empresas y grupos.

La notación de modelado de procesos de negocios es un estándar gráfico para crear diagramas similares a los organigramas que puedan ser entendidos con facilidad por todas las partes interesadas, como analistas, desarrolladores, programadores y gestores. El estándar BPMN lo mantiene el Object Management Group (OMG), la misma organización que administra el estándar UML.

Modelado BPMN con Altova UModel

UModel es compatible con BPMN 1.0 y con BPMN 2.0 e incluso ofrece rutas de acceso de migración para los usuarios que quieran actualizar diagramas antiguos con elementos y funciones nuevas introducidos en el estándar BPMN 2.0. También permite intercambiar modelos BPMN con otras herramientas BPMN mediante el uso de la especificación XMI, diseñada en un principio para modelos UML.

Características:

  • Compatible con BPMN 1.0 y BPMN 2.0
  • Convierta diagramas BPMN 1.0 en BPMN 2.0 automáticamente
  • Cambie automáticamente la orientación de contenedores y compartimentos
  • Permite asignar elementos a diferentes capas del diagrama, que se pueden ver u ocultar
  • Número ilimitado de operaciones de deshacer/rehacer
  • Diagramas BPMN integrados en el modelado UML
  • Documentación automatizada de diagramas y elementos BPMN

Diagramas BPMN

Los elementos y reglas para los diagramas de procesos de negocios son muy parecidos a los diagramas de actividades UML, lo cual permite una transición natural de las premiadas y sencillas herramientas de modelado de UModel de UML a BPMN. Con UModel puede crear diagramas de formato libre para reflejar los detalles de procesos internos.

Diagramas de coreografía BPMN

Los diagramas de coreografía indican de qué manera coordinan sus interacciones los participantes en el proceso. También pueden entenderse como un contrato comercial entre los participantes, cuyo objetivo es el intercambio de información (mensajes) entre los participantes.

La barra de herramientas de diagramas de coreografía incluye todos los elementos de coreografía BPMN 2.0 y menús desplegables para seleccionar tareas, eventos y compuertas.

Diagramas de colaboración BPMN

Los diagramas de colaboración definen la interacción entre dos o más procesos. Las colaboraciones BPMN suelen estar formadas por dos o más contenedores que representan a los participantes de la colaboración. El intercambio de mensajes entre los participantes se representa mediante flujos de mensaje que conectan estos contenedores o los objetos ubicados dentro de los contenedores. La barra de herramientas de diagramas de colaboración de UModel ofrece un acceso rápido a todos los elementos del diagrama de colaboración.