lunes, 20 de abril de 2020

Herramienta de modelado: StarUML



Introducción

El desarrollo de software no es una tarea fácil. Por esta razón existen diversas herramientas que nos sirven para desarrollar los sistemas de una manera más ágil, en este caso hablaremos de StarUml, que es una herramienta UML  de licencia gratuita, desarrollada para el  modelamiento de software, basándose en  estándares  UML y DMA.

Es muy fácil de usar, debido  a la simplicidad  y rápida percepción de sus objetos, funciones y características, otra característica fundamental  es que  su código es compatible con lenguajes como C++ y Java.

STAR UML

StarUML es una herramienta para el modelamiento de software basado en los estándares UML (Unified Modeling Language) y MDA (Model Driven Arquitecture), que en un principio era un producto comercial y luego pasó de ser un proyecto comercial (anteriormente llamado plastic) a uno de licencia abierta GNU/GPL.

El software heredó todas las características de la versión comercial y poco a poco ha ido mejorando sus características, entre las cuales se encuentran:
ü  Soporte completo al diseño UML mediante el uso de:
– Diagrama de casos de uso
– Diagrama de clase
– Diagrama de secuencia
– Diagrama de colaboración.
– Diagrama de estados
– Diagrama de actividad.
– Diagrama de componentes
– Diagrama de despliegue.
– Diagrama de composición estructural

ü  Definir elementos propios para los diagramas, que no necesariamente pertenecen al estándar de UML.
ü  La capacidad de generar código a partir de los diagramas y viceversa, actualmente funcionando para los lenguajes c++, c# y java.
ü  Generar documentación en formatos Word, Excel y PowerPoint sobre los diagramas.
ü  Plantillas de proyectos.
ü  Posibilidad de crear plugins para el programa.





En definitiva esta es una de las mejores alternativas gratis que hay en Internet para el modelamiento de software y probablemente una gran ayuda a la hora de programar juegos.

Ventajas

ü  Muy fácil de usar
ü  código es compatible con lenguajes como C++ y Java.
ü  simplicidad  y rápida percepción de sus objetos.

Desventajas


ü  El código generado sobre-escribe el código anterior generado.
ü  La generación de clases las crea sin tomar en cuenta el paquete donde se encuentra.
ü  Puedes crear Diagramas E-R pero al final no genera nada de SQL.
ü  No dispone de ingeniería inversa para PHP.
Historia de StarUML
StarUML es conocida anteriormente como “Plastic” o “Agora Plastic”.

ü   En 1996 Nace la primera versión de plastic (V0.9). Herramienta muy simple que se utilizaba para dibujar módulos de software y su dependencia.
ü   En 1997 se lanza Plastic 1.0. “freeware”, apoyo OMT (object Modeling technique - técnica de modelado de objetos).
ü  En 1998 se lanza Plastic 1.1. Usaba Diagramas de clases UML.
ü  En 1999 se funda Software Plastic Inc. se lanza la versión 2.0. Soporta UML, genera código JAVA e ingeniería inversa.
ü  En 2001 se lanza la versión 3.0. totalmente compatible con UML 1.3.
ü  En 2003 se lanza Plastic 2003. Completamente rediseñado y reescrito. Soporte completo con UML 1.4, arquitectura abierta.
ü  En 2005 se lanza Agora Plastic 2005. Se internacionaliza, muchas características se implementan en la plataforma extendible.
ü  En el mismo año se renombra y se lanza StarUML 5.0. Volviéndose un proyecto de código abierto. Soportando UML 2.0 y se implementa la tecnología de notación de extensión.
StarUML fue escrito en Delphi, que es una de las razones por las que fue abandonado durante mucho tiempo. Desde diciembre de 2005 StarUML ya no se actualizó, aunque se actualizaron algunos módulos externos.
UML V.3.2.2 / 14 de enero de 2020 ; Hace 3 meses
StarUML es un sofisticado modelador de software destinado a admitir modelos ágiles y concisos.
Los principales objetivos de los usuarios son:
ü  Equipos de desarrollo ágiles y pequeños.
ü  Personas profesionales
ü  Institutos educativos
Las características clave de StarUML son:
ü  Soporte multiplataforma (MacOS, Windows y Linux)
ü  Cumple con el estándar UML 2.x
ü  Diagrama de entidad-relación (ERD)
ü  Diagrama de flujo de datos (DFD)
ü  Diagrama de flujo
ü  Múltiples ventanas
ü  UX moderno
ü  Temas oscuros y claros
ü  Soporte de pantalla Retina (High-DPI)
ü  Desarrollo basado en modelos         
ü  API abiertas
ü  Varias extensiones de terceros
ü  Validación asincrónica del modelo
ü  Exportar a documentos HTML
ü  Actualizaciones automáticas.

Proyecto                                              

El proyecto es un elemento de nivel superior almacenado como un solo archivo ( )..mdj
Modelado de un sistema de software requiere que describe varios modelos, ya que no es suficiente para describir el sistema con un único punto de vista, por lo que suelen hacer varios modelos tales como casos de uso Modelo , Modelo de diseño , los componentes del Modelo , Modelo de implementación , u otros en un proyecto .
Normalmente, Project se organiza como un conjunto de UMLModels , UMLPackages o UMLSubsystems . Si desea obtener más información sobre los elementos UML, consulte la Especificación UML de OMG (Object Management Group).

Modelo vs Vista

Muchos usuarios confunden la diferencia entre las herramientas de diagramación o dibujo como Microsoft Visio y las herramientas de modelado como StarUML o Rational Software Architect. Primero debes entender que un diagrama no es un modelo.
El modelo o modelo de software es una descripción de cualquier aspecto de un sistema de software, como la estructura, el comportamiento, los requisitos, etc. Un modelo de software puede representarse en forma textual, matemática o visual. Un elemento Modelo es un componente básico de un modelo de software.
Un diagrama es una representación simbólica geométrica visual de un modelo de software. Un modelo de software se puede representar en uno o más diagramas con diferentes aspectos. Por ejemplo, un diagrama puede enfocarse en la estructura jerárquica de la clase, mientras que otro diagrama puede enfocarse en la interacción entre objetos. Los diagramas consisten en elementos de vista , que son representaciones visuales de un elemento modelo .
Un elemento modelo puede tener múltiples elementos de vista correspondientes . Un elemento modelo tiene sus propios datos, como nombre , estereotipo , tipo , etc. Un elemento de vista solo representa el elemento modelo correspondiente en un diagrama. Ver elementos puede existir varias veces en un diagrama o en diferentes diagramas. Si el nombre de un elemento modelo cambió, todos los elementos de vista correspondientes reflejan los cambios en sus diagramas.

Fragmento

Un fragmento es parte de un proyecto guardado como un archivo separado con el nombre de la extensión. Cualquier elemento se puede exportar como un fragmento, pero normalmente UMLPackage , UMLModel y UMLSubsystem son los candidatos. Una vez que un fragmento se exporta como un archivo, el fragmento se puede reutilizar importando en un proyecto..mfj

Perfil

UML (Unified Modeling Language) es un lenguaje de modelado de propósito general que podría usarse para expresar cualquier tipo de sistemas intensivos en software. Por esta razón, usar UML para un dominio o plataforma específicos no es suficiente, por lo que es posible que deba definir el perfil UML. StarUML proporciona perfiles UML que se pueden usar para expandir UML. Por ejemplo, los perfiles UML se pueden usar para los siguientes propósitos.
ü  Perfiles para lenguajes de programación específicos (C / C ++, Java, C #, Python, etc.)
ü  Perfiles para metodologías de desarrollo específicas (RUP, Catálisis, Componentes UML, etc.)
ü  Perfiles para dominios específicos (EAI, CRM, SCM, ERP, etc.)

 

 

Extensión

Una extensión es un paquete que agrega nuevas funciones a StarUML. Por ejemplo, una extensión puede extender menús, IU, diálogos, anotaciones de modelado, preferencias, etc. Una extensión puede escribirse en JavaScript, CSS3 y HTML5 y puede usar Node.js integrado en StarUML. Las extensiones se pueden instalar, desinstalar y actualizar fácilmente a través del registro de extensiones principal.

Herramientas

StarUML hace uso de herramientas, estas son: Herramientas de clase, anotación y análisis.

Herramientas para la Clase

Son objetos con los que comienzan a desarrollar sus diagramas. Puede incluir subsistemas, paquetes, clases, interfaces, entre otros. Y, para dar sentido a su proyecto, utilice conectores que pueden ser de asociación, la agregación, la dependencia, la composición, entre otros.

Herramientas de anotación

Con ellos se puede agregar comentarios a su diagrama. StarUML ofrece opciones para añadir cuadros de texto, notas, enlaces y formas geométricas.

Herramientas de análisis

Son herramientas que se utilizarán durante las implementaciones de análisis. StarUML ofrece opciones de entidades, los límites de control, asociaciones y generalizaciones.





 

 

 

 


Primer Vistazo a StarUML




Sidebar: La barra lateral es el área izquierda que contiene el panel Diagramas de trabajo y la Caja de herramientas

ü  Working Diagrams: El panel Diagramas de trabajo muestra una lista del diagrama de trabajo abierto. El diagrama seleccionado se muestra en el Área del diagrama.
ü  Toolbox: Caja de herramientas muestra elementos que se pueden crear en el diagrama seleccionado.
Diagram Área: Área del diagrama muestra el diagrama seleccionado actualmente.

Toolbar: La barra de herramientas muestra botones de herramientas que generalmente se proporcionan desde extensiones de terceros instaladas o predeterminadas.
Navigator: El navegador que está a la derecha contiene:





ü  Model Explorer: El Explorador de modelos muestra la estructura de árbol de los elementos del modelo.
ü  Editors (Holder): contiene editores para editar las propiedades del modelo y ver elementos. Incluye el Editor de estilo, el Editor de propiedades y el Editor de documentación.
-        Style Editor: El editor de estilo permite editar estilos de elementos de vista seleccionados.
-        Property Editor: El Editor de propiedades permite editar las propiedades de los elementos del modelo seleccionados.
-        Documentation Editor: El Editor de documentación permite editar la propiedad de documentación de un elemento modelo seleccionado.
Bottom Panel : El panel inferior es un panel que se muestra debajo del área del diagrama que generalmente se proporciona a partir de extensiones de terceros instaladas o predeterminadas, que incluyen resultados de búsqueda, miniaturas de diagrama, resultados de validación , editor de rebajas , etc.



Statusbar: Para mostrar u ocultar la barra de estado, presione o marque (o desmarque).


Diagramas de casos de uso

DIAGRAMA DE CASO DE USO DE UNA CLÍNICA.

Sistema de una clínica el cliente paga la cita a la secretaria, solicita la consulta o la hace pasar la secretaría lo registra en la base de datos de la clínica, el doctor receta los medicamentos, luego el cliente sale de la cita. La consulta puede ser cancelada con anticipación de hasta 48 horas.
El cliente paga una cuota  mensual al empleado de la clínica, el genera un recibo de pago, para que preste el servicio. Tener en cuenta que un cliente puede tener obra social.

Interface de StarUML:



Solución en StarUML:

 

 

 

 

 


Conclusiones

La herramienta StarUML es software libre, multiplataforma; lo que le da una gran área de uso y posibilidad de su mejora por parte del usuario.

StarUML tiene la capacidad de crear diferentes diagramas, no solo UML, como pueden ser: casos de uso, diagramas de flujo, entre otros. Con la posibilidad de poder guardar plantillas de los diagramas.

También es capaz de generar código de lenguaje C++ y Java a través de los diagramas. Otra de sus habilidades es la de generar diagramas a partir de código; a esto se le llama ingeniería inversa.

Una función adicional útil para la documentación es la posibilidad de generar documentos de formato Word, Excel o Powerpoint en base a los diagramas.

La aplicación en si no tiene un manual, lo poco que tiene de documentación no explica el funcionamiento de la herramienta o el cómo se usa; por lo que puede resultar un poco difícil de usar para el usuario.

A la hora de realizar un diagrama se presentan pocos errores; por lo que tiene una funcionalidad apreciable.



 

 













 


Bibliografía



Documentación StarUML https://docs.staruml.io

Código Programación. (11 de Marzo de 2013). http://codigoprogramacion.com/tag/staruml#.UlrubtJLM_5              
      
Weitzenfeld, A. (2005). Ingeniería de software orientada a objetos con UML, Java e Internet. Cengage Learning Editores.



 Xavier, A. (s.f.). Baixar. Recuperado el 13 de Octubre de 2013, de http://www.baixaki.com.br/download/staruml.htm


No hay comentarios:

Publicar un comentario

MÉTODOS  FORMALES.   UNA MIRADA PRACTICA ¿Qué es un Método Formal? Método formal es cualquier técnica que trate la construcción ...