martes, 25 de septiembre de 2012

Softwate Libre Para Diagramas UML


ARGO UML
ArgoUML es una aplicación en entorno gráfico de diseño, desarrollo y documentación de software orientado a objetos escrita en Java que permite crear la gran mayoría de diagramas UML estándar (en formatos PNG, GIF, SVG, PGML, entre otros) y generar el código en distintos lenguajes (Java, C++, C, PHP4 y PHP5), así como generar diagramas UML a partir de código Java compilado. Además el software tiene otras características como la compatibilidad con el estándar XMI, soporte para OCL, framework modular para ingeniería inversa, entre otras.

ENTERPRISE ARCHITECT
Enterprise Architect combina el poder de la última especificación UML 2.1 con alto rendimiento, interfaz intuitiva, para traer modelado avanzado al escritorio, y para el equipo completo de desarrollo e implementación. Con un gran conjunto de características y un valor sin igual para el dinero, EA puede equipar a su equipo entero, incluyendo analistas, evaluadores, administradores de proyectos, personal del control de calidad, equipo de desarrollo y más, por una fracción del costo de algunos productos competitivos. Verifique el rango completo de las herramientas y características case en detalle.
Alta capacidad - Características finales superiores a un precio justo 
Enterprise Architect es una herramientas comprensible de diseño y análisis UML, cubriendo el desarrollo de software desde el paso de los requerimientos a través de las etapas del análisis, modelos de diseño, pruebas y mantenimiento. EA es una herramienta multi-usuario, basada en Windows, diseñada para ayudar a construir software robusto y fácil de mantener. Ofrece salida de documentación flexible y de alta calidad. El manual de usuario está disponible en línea.
El Lenguaje Unificado de Modelado provee beneficios significativos para ayudar a construir modelos de sistemas de software rigurosos y donde es posible mantener la trazabilidad de manera consistente. Enterprise Architect soporta este proceso en un ambiente fácil de usar, rápido y flexible. Para una mirada rápida al modelado UML en Enterprise Architect vea nuestro tutorial UML  y documentos.


Velocidad, estabilidad y buen rendimiento.


Umbrello: es una herramienta de diagramas que ayuda en el proceso del desarrollo de software. Umbrello facilita la creación de un producto de alta calidad, especialmente durante fases de análisis y diseño del proyecto. UML también puede usarse para documentar sus diseños de software para ayudarle a usted y al resto de desarrolladores.

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 que hace cerca de un año paso de ser un proyecto comercial (anteriormente llamado plastic) a uno de licencia abierta GNU/GPL.

BoUML: Esta también es una herramienta CASE gratuita (licencia GPL). Permite trabajar con UML 2, soporta gran cantidad de diagramas, es rápida y apenas consume memoria, es sencilla de utilizar, permite generar código para Java, C++ e IDL, y puede hacer reingeniería inversa (a partir del código sacar el modelo). También es capaz de generar documentación en varios formatos (HTML, XMI, etc.)

Dia: es un programa de creación de diagramas basado en GTK+ bajo la licencia GPL. Está inspirado en el programa comercial de Windows ‘Visio’, y puede ser usado para dibujar muchos tipos diferentes de diagramas. Dispone de una serie de extensiones para ayudar en la elaboración de diagramas entidad-interrelación, UML, flujo de datos, diagramas de red, y un largo etc. Pero muchos al usarlo tal vez puedan sentir una frustración ya que no es muy sencillo de usar y se trata ‘solamente’ de una herramienta de dibujo de diagramas, evitando que podamos sacarle todo el provecho que se podría sacar del UML. Dia incluye una herramienta para generar código a partir de los diagramas realizados.
Existen muchas otras como: Frame UML y TinyUML, pero es necesario informar que la mayoría de estas herramientas se encuentran en fase de desarrollo, por lo tanto aun poseen muchas carencias y detalles técnicos que solventar. La herramienta más recomendada, por lo que ofrece y porque ha logrado superar incluso a herramientas CASE para UML comerciales, son ArgoUML y StarUML, estas son las que se han ubicado entre las preferidas y las más completas por sus múltiples opciones de diseño y sus incorporaciones que no le envidian nada a las herramientas de software propietario.
------------------------------------------------------------------------------------------------------------------------
Estas herramientas nos serán útiles para poder desarrollar diagramas UML, todas estas son gratuitas, de esta forma será más fácil poder hacer uso de ellas e implementar un software de calidad.

UML (Lenguaje Unificado de Modelado)

UML

Lenguaje Unificado de Modelado (UML, por sus siglas en inglés, Unified Modeling Language), está consolidado como un lenguaje estándar en el análisis y diseño de sistemas de cómputo.
Mediante UML es posible construir la serie de requerimientos y estructuras necesarias para plasmar un sistema de software previo al proceso de escritura de código. Es un lenguaje gráfico para visualizar, especificar, construir y documentar un sistema.
UML ofrece un estándar para describir un modelo del sistema, comprendiendo aspectos conceptuales tales como procesos y funciones del sistema, y aspectos concretos como expresiones de lenguajes de programación, esquemas de bases de datos y componentes reutilizables.
Aunque UML es un lenguaje, éste posee más características visuales que programáticas, que facilitan a los integrantes (analistas, diseñadores y programadores) de un equipo multidisciplinario participar y comunicarse fácilmente.
La programación orientada a objetos se convierte en un complemento perfecto de UML, pero no por eso se toma UML sólo para lenguajes orientados a objetos.
---------------------------------------------------------------------------------------------------------------------
UML es un lenguaje que nos permite llevar a cabo un análisis y un diseño de sistemas, también nos permite construir estructuras necesarias para plasmar un sistema de software y poder visualizarlo  previo al proceso de escritura de código.
UML es utilizable para lenguajes orientados a objetos, pero tiene algunas otras aplicaciones.


Metodología RUP

METODOLOGÍA RUP
El Rational Unified Process o Proceso Unificado de Racional. Es un proceso de ingeniería de software que suministra un enfoque para asignar tareas y responsabilidades dentro de una organización de desarrollo. 
Su objetivo es asegurar la producción de software de alta calidad que satisfaga la necesidad del usuario final dentro de un tiempo y presupuesto previsible.
Es una metodología de desarrollo iterativo enfocada hacia “los casos de uso, manejo de riesgos y el manejo de la arquitectura”.

Ventajas de la Metodología RUP.
Mejora la productividad del equipo ya que permite que cada miembro del grupo, sin importar su responsabilidad específica, acceda a la misma base de datos de conocimiento. Esto hace que todos compartan el mismo lenguaje, la misma visión y el mismo proceso acerca de cómo desarrollar software.

Ciclo de Vida


FASE DE INICIO
Durante esta fase de inicio las iteraciones se centran con mayor énfasis en las actividades de modelamiento de la empresa y en sus requerimientos
FASE DE ELABORACIÓN
Durante esta fase de elaboración, las iteraciones se centran al desarrollo de la base del diseño, encierran más los flujos de trabajo de requerimientos, modelo de la organización, análisis, diseño y una parte de implementación orientada a la base de la construcción
FASE DE CONSTRUCCIÓN
Durante esta fase de construcción, se lleva a cabo la construcción del producto por medio de una serie de iteraciones las cuales se seleccionan algunos Casos de Uso, se redefine su análisis y diseño y se procede a su implantación y pruebas. En esta fase se realiza una pequeña cascada  para cada ciclo, se realizan tantas iteraciones hasta que se termine la nueva implementación del producto.
FASE DE TRANSICIÓN
Durante esta fase de transición busca garantizar que se tiene un producto preparado para su entrega al usuario.
--------------------------------------------------------------------------------------------------------
Comentario Metodología RUP.
Esta metodología nos sirve para poder tener una mejor organización, tener bien definidas las actividades y responsabilidades de cada uno de los integrantes de un proyecto de software por así llamarlo.
El objetivo principal y generar un software de alta calidad.

Otro objetivo es que cada integrante del equipo participe sin importar su función, ya que esto ayuda a mejorar y a entender el software.
Las fases básicamente nos sirven para identificar los procesos y paso que debemos llevar a cabo, ya que la metodología RUP busca la implementación de un software de alta calidad.