Diseño de aplicaciones mediante UML con Umbrello

30 de noviembre de 2022

Lang: cs en de es

Si participa en el desarrollo de sistemas más grandes que pequeños y desea comunicarse mejor entre los equipos y disponer de una buena y clara asignación para ello, el Lenguaje Unificado de Modelado es una gran herramienta. UML es un conjunto de técnicas, y se han desarrollado muchas herramientas para acompañarlas, que permiten traducir y registrar especificaciones en diagramas gráficos que muestran estructuras, estados , procesos, etc. Una de estas herramientas para UML es el software Umbrello, que es un programa de código abierto que agiliza la comunicación de la escritura y la modificación de las especificaciones y también se utiliza para crear documentación.

UML ayuda a registrar tus ideas de forma visual pero técnicamente precisa, por lo que ayuda a la comunicación entre cliente, analista y programador. También sirve como registro de lo que se ha comido y como documentación una vez finalizado el proyecto. Al escribir la información visualmente, la información básica y las relaciones son visibles de un vistazo sin reverencias.
El Lenguaje Unificado de Modelado está estandarizado, lo que dificulta su uso en diferentes empresas. Las empresas pueden utilizarlo como herramienta de comunicación. Y si lo aprendes, tienes la oportunidad de utilizarlo regularmente en diferentes proyectos y en diferentes empresas.

UML

Usando UML, puedes representar visualmente estructuras y sus relaciones, cambios de estado, acciones del usuario o su paso por un proceso, y mucho más. Componente

Lápiz y papel

UML es independiente de la tecnología ni siquiera necesitas un ordenador. Puedes dibujarlo todo en papel o en una pizarra.

Umbrello modelador UML

Ya que estamos en la era digital, en lugar de dibujar en papel, es mejor dibujar diagramas en una aplicación idealmente una herramienta diseñada para tal fin Esto hace que la imagen resultante sea más fácil de compartir, pero sobre todo más fácil de editar. Hay muchas herramientas yo uso la aplicación Umbrello.

Umbrello es una aplicación para implementar conceptos UML en un ordenador. Con dicha aplicación puedes, simplemente mover o copiar objetos sin necesidad de borrar y volver a dibujar en papel. Además, Umbrello es un software multiplataforma, por lo que puedes ejecutarlo en Linux, Windows MacOS y otros.

Programa Umbrello con un proyecto en blanco:
umbrello

Umbrello puede dibujar este tipo de diagramas:

  • Diagrama de clases
  • Diagrama de secuencia
  • Diagrama de comunicación
  • Diagrama de casos de uso
  • Diagrama de estado
  • Diagrama de actividad
  • Diagrama de componentes
  • Diagrama de implementación
  • Diagrama de relaciones entre entidades

umbrello-menu

UML en la práctica

Aunque soy un techie y por eso prefiero escribir en un lenguaje de programación. Hay información que se lee mejor a partir de imágenes. En estos casos uso Ubrello para dibujar diagramas UML.

Generando un diagrama de clases

La primera vez que utilicé técnicas UML fue mientras estudiaba en la Universidad Técnica Checa de Praga. Y utilicé el software Umbrello, por ejemplo, cuando escribí mi tesis de licenciatura, que versaba sobre cifrado en tarjetas inteligentes. Aquí se puede descargar tesis de licenciatura: tarjetas chip Java Card OpenPlatform.

En Umbrello, importé el código fuente, y Umbrello me generó un diagrama de clases.

Generación de código

Si dibujas un diagrama de clases en la aplicación, puedes utilizar Umbrello para generar el esqueleto del programa. Es decir, los ficheros que reconstruyen las clases, propiedades y nombres de funciones. Por supuesto, la lógica de la aplicación necesita entonces ser programada por un programador-.

Estados

Cambiar el estado de un objeto es una situación habitual. La más típica con la que se encuentra un desarrollador de aplicaciones web es cambiar el estado de una orden. Una librería que facilitará la implementación de dicha funcionalidad es la librería PHP framework Symfony. El componente de flujo de trabajo.

Para una mejor comprensión por parte del programador, documentación e incluso presentación al usuario, lo ideal es graficar esto como un diagrama de Estado. Tal diagrama entonces deja claro exactamente qué estado se puede transicionar de uno a otro.
Ejemplo de diagrama de estado:
uml-state-diagram

Clases

Diagrama de clases:
uml-diagram-component

Entidad de modelado

Usando Umbrello, puedes crear un diagrama Entidad Relación, es decir, Entidades y sus relaciones, y luego generar sentencias SQL a partir de eso para crear tablas de base de datos.

Ejemplo de diagrama con tres entidades:
uml-entity-relationship-diagram

Utilicé este diagrama para diseñar las entidades de la base de datos para el proyecto de sensores inalámbricos IoT. Y luego pude usar las sentencias SQL generadas para crear tablas de base de datos en varios motores de consulta, como MySQL o SQLite.

Desde la perspectiva de un programador y del desarrollo ágil, la estructura de entidades y por tanto la base de datos cambia a medida que evoluciona la aplicación. Será una opción más sensata documentar las entidades y escribir sus relaciones directamente en el código de la aplicación. Por ejemplo, para utilizar herramienta Doctrine, que también permite generar scripts de migración. A continuación, se puede generar la representación visual/gráfica a partir de la base de datos. Varias herramientas pueden hacerlo, por ejemplo phpmmyadmin.

Otras herramientas UML

Existen muchas aplicaciones para UML. Dada la necesidad de colaboración entre personas, dicho software debe ser multiplataforma. Así, por ejemplo, no recomiendan herramientas de Microsoft. Por ejemplo, el popular Enterprise Architect es sólo para Windows.

Sin embargo, tengo algunos otros tipos.

  • magic draw -. Según el fabricante, debería funcionar en Windows, Linux y Mac OS, ya que está escrito en JAVA (=multiplataforma).
  • PlanUML - se puede insertar directamente en git o wiki.

Artículos sobre un tema similar

Imprimir imágenes en Linux
Inteligencia artificial: dalle2, Chat GPT
Nextcloud: datos y aplicaciones en la nube
GitLab: una herramienta de gobernanza, versionado, CI/CD y gestión de proyectos

Boletin informativo

Si está interesado en recibir noticias puntuales por correo electrónico.
Puedes registrarte rellenando tu email suscripción de noticias.


+