jueves, 30 de mayo de 2013

Herramientas CASE

LAS HERRAMIENTAS CASE
I.              INTRODUCCIÓN
En esta era digital utilizamos computadoras en nuestra vida diaria, las utilizamos en aplicaciones domésticas o fuera de nuestras casas.
La verdad es que no podemos escapar de las computadoras. El rápido incremento en el avance de las computadoras junto al gran decremento en tamaño y costo, dio como resultado una explosión de tecnología, generándose una infinidad de aplicaciones que éstas pueden soportar.
Cuando se ha empezado con la escritura de software, ha existido un conocimiento de la necesidad de herramientas automatizadas para ayudar al diseñador del software a desarrollar con más eficacia.
A medida que se escribía nuevo software, habían ya en millones y millones de líneas de código que necesitaban ser mantenidas y actualizadas.
Esto causó a la industria de las computadoras muchos problemas, no podía cubrir el incremento de la demanda con los métodos que se estaban usando. Para superar este problema en el proceso de desarrollo de software, se introdujeron metodologías para intentar crear estándares de desarrollo.
Entonces, la industria se ha ayudado a superar las dificultades de uso de esta tecnología disponible. La industria de computadoras ha desarrollado un soporte automatizado para el desarrollo y mantenimiento de software: Este es llamado Computer Aided Software Engineering (CASE).

II.            ¿QUÉ SON LAS HERRAMIENTAS CASE?

- Un conjunto de programas y ayudas que dan asistencia a los analistas, ingenieros de software y desarrolladores, durante todos los pasos del Ciclo de Vida de desarrollo de un Software.
- Conjunto de métodos, utilidades y técnicas que facilitan la automatización del ciclo de vida del desarrollo de sistemas de información, completamente o en alguna de sus fases.
- La sigla genérica para una serie de programas y una filosofía de desarrollo de software que ayuda a automatizar el ciclo de vida de desarrollo de los sistemas.
- Una innovación en la organización, un concepto avanzado en la evolución de tecnología con un potencial efecto profundo en la organización.
- Se puede ver al CASE como la unión de las herramientas automáticas de software y las metodologías de desarrollo de software formales.

III.           ¿EN QUÉ NOS AYUDAN LAS HERRAMIENTAS CASE?

Estas herramientas pueden proveer muchos beneficios en todas las etapas del proceso de desarrollo de software, algunas de ellas son:
- La principal ventaja de la utilización de una herramienta CASE, es la mejora de la calidad de los desarrollos realizados y, en segundo término, el aumento de la productividad. Para conseguir estos dos objetivos es conveniente contar con una organización y una metodología de trabajo, además de la propia herramienta.
- Verificar el uso de todos los elementos en el sistema diseñado.
- Automatizar el dibujo de diagramas.
- Ayudar en la documentación del sistema.
- Ayudar en la creación de relaciones en la Base de Datos.
- Generar estructuras de código.

IV.          LOS COMPONENTES DE LAS HERRAMIENTAS CASE

Una herramienta CASE se compone de los siguientes:
- Repositorios: Lugar en el que se almacenan aquellos elementos que hacen parte de la herramienta o que fueron definidos por esta. Su administración se encuentra a cargo de algún Sistema de Gestión de Base de Datos (SGBD).
- Metamodelo: Definición de los métodos y las técnicas que hacen parte de la herramienta, no siempre es visible.
- Carga o descarga de datos: Capacidad de generar rutinas, diagramas de base de datos, entre otros, para alimentar diferentes sistemas; estos es lo que caracteriza la comunicación con otras herramientas .Facilidad de uso los diferentes elementos de la herramienta.
- Comprobación de errores: Brinda la capacidad de analizar los niveles de consistencia exactitud e integridad de los esquemas que se pueden generar por medio de la herramienta.
- Interfaz de usuario: Es aquel entorno que facilita al usuario por medio de objetos representados gráficamente y editables, generar y modificar los diferentes diagramas, esquema, matrices y demás, por medio de periféricos de entrada; mouse, digitalizer tablet, touch screen etc.

V.           LA ESTRUCTURA DE UNA HERRAMIENTA CASE

- CASE de alto nivel: Herramientas que apoyan en la fase de planeación, análisis y diseño de sistemas durante el ciclo de vida del desarrollo, es decir en las fases finales.
- CASE de bajo nivel: Al igual que las herramientas de alto nivel, apoyan al ciclo de vida del desarrollo pero estas ayudan en las fases de diseño detallado de sistemas, la implantación de sistemas y el soporte de sistemas, es decir, en las fases intermedias.
- CASE cruzado de ciclo de vida: Herramientas que apoyan la estimación y las actividades de gestión de proyectos, que son aquellas tareas que tienen lugar durante todo el ciclo de vida.

VI.          COMPARATIVA DE LAS HERRAMIENTAS CASE

Clasificación de las herramientas CASE según el tipo de software que manejan:

a)    SOFTWARE LIBRE:

·         ArgoUML
Herramienta desarrollada en Java bajo licencia BSD Open Source, empleada para el diseño de diagramas UML. Puede utilizarse en cualquier sistema operativo que soporte java.
·         BOUML
Herramienta multiplataforma, utilizada para el diseño y creación de diagramas UML. Permite generar código en IDL, C++ y php de forma automática, a través de los modelos realizados.
·         Fujaba
Herramienta CASE, que permite la realización de diagramas UML, para el modelado de diferentes aplicaciones, y a la vez brinda la posibilidad de generar código java de manera automática. La ingeniería a la inversa es otra de las funcionalidades de esta herramienta.
·         Dia
Herramienta de modelado que además de permitir la realización de diagramas UML, se puede emplear para crear diagramas para circuitos, cronogramas, redes entre otros.
·         gModeler
Herramienta basada en flash, realizada por Grant Skinner, que permite la creación de modelos UML. De igual manera, con esta herramienta es posible generar código Action Scrip 2.0.
·         MonoUML
Herramienta CASE, empleada para el diseño y creación de diagramas UML. Permite generar código C# a partir de los modelos UML. Fue realizada para la plataforma Mono.
·         Papyrus
Herramienta basada en Eclipse, que permite la realización de diagramas empleando el modelado UML 2.
·         StarUML
Herramienta desarrollada en Delphi, empleada para el modelado UML. Permite realizar autogeneración de código (Java, C++, C#...) entre otros.
·         TCM, Toolkit for Conceptual Modeling
Herramienta de modelado que permite la realización de diversos tipos de diagramas, incluyendo aquellos que corresponden a UML. TMC fue creado bajo licencia GNU y corre sobre plataformas Linux, Unix, Windows.
·         Umbrello
Herramienta libre desarrollada por Paul Hensgen, que permitie crear y editar diagramas UML en entornos KDE. Esta herramienta genera código automáticamente en los lenguajes C++, Java, Python, IDL, Pascal/Delphi, Ada.
·         UMLet
Herramienta que emplea una interface ligera para permitir la creación de diagramas UML de forma fácil y rápida. Fue escrita en java y se puede utilizar como una aplicación independiente o integrada en Eclipse, como un plugin.
·         Netbeans módulo
Este módulo permite realizar el modelado de diferentes aplicaciones empleando UML. Incluye la funcionalidad de generación automática.
·         UML
Código para Java, C++, php entre otros.
·         Open ModelSphere
Herramienta libre, creada en lenguaje Java, que permite la realización de diagramas UML. Soporta Ingeniería a la inversa de una base de datos SQL vía ODBC y JDBC.

b)    FREEWARE

·         JUDE Community
Herramienta de modelado que incluye características básicas para la creación y edición de diagramas UML.
·         Omondo plugin para Eclipse
Herramienta de modelado que permite la creación y edición de diagramas UML. Se integra en el entorno eclipse y contiene la funcionalidad de Ingeniería a la inversa. Se puede emplear en varios sistemas operativos tales como Linux, Windows, Solaris 8 y MacOS.
·         JUDE Community
Herramienta de modelado que incluye características básicas para la creación y edición de diagramas UML.
·         Oracle Jdeveloper
Es un IDE para SOA y Java que permite soporta la realización de diagramas UML.
·         Visual Paradigm for UML
Herramienta de modelado UML y herramienta CASE que permite realizar diagramas UML, generar código y documentación a partir de dichos diagramas y realizar ingeniería a la inversa. Existe una versión gratuita llamada Community Edition.

c)    SOFTWARE PROPIETARIO

·         Enterprise Architect de Sparx Systems
Esta herramienta de modelado, se basa en el estándar de UML 2.1 y ayuda en la realización de diferentes actividades que se llevan a cabo durante el desarrollo de software.
·         Borland Together
Es una completa herramienta para modelado, que permite realizar el diseño de aplicaciones, desarrollo y despliegue, facilitando al equipo de trabajo la planeación y construcción de sistemas robustos.
·         Corel iGrafx
Es una completa suite que permite, modelar, diseñar y mejorar los procesos de negocio en una organización. Se pueden encontrar en diferentes ediciones de acuerdo a las necesidades de la organización.
·         Microsoft Vision
Es una herramienta que permite la elaboración de diversos diagramas de oficina, bases de datos, diagramas de flujo de programas, UMl, entre otros. Se encuentra disponible en dos versiones: Office Visio Professional y Office Visio Standard.
·         Power Designer de Sybase
Es una herramienta para modelado, considerada como una de las mejores del mercado. Entre sus características principales se pueden citar, la fácil visualización, análisis, diseño y manipulación de metadatos, que garantizan una arquitectura empresarial efectiva.
·         Rational Rose de IBM
Es una herramienta para modelado, que soporta UML 2.0, permite la creación de diferentes diagramas, así como la generación automática de código a diferentes lenguajes tales como: Ada, ANSI C++, C++, CORBA, Java/J2EE, Visual C++ y Visual Basic.
·         Poseidon for UML de GentleWare
Es una herramienta de modelado, que permite realizar diagramas de forma rápida y sencilla, crear documentación y generar código de manera automática. Contiene una interfaz intuitiva que facilita su comprensión y manejo.
·         MagicDraw UML
Esta herramienta para modelado UML, permite realizar diferentes diagramas y soporta varios lenguajes de programación tales como: C, C++, .NET, Schema, CORBA. De igual manera, facilita la creación de Bases de Datos y sistemas orientados a objetos.

VII.         CONCLUSIÓN

Finalmente, las herramientas CASE han venido a revolucionar la forma de automatizar los aspectos clave en el desarrollo de los sistemas de información, debido a la gran plataforma de seguridad que ofrecen a los sistemas que las usan y es que éstas, brindan toda una gama de componentes que incluyen todas o la mayoría de los requisitos necesarios para el desarrollo de los sistemas, han sido creadas con una gran exactitud en torno a las necesidades de los desarrolladores de sistemas para la automatización de procesos incluyendo el análisis, diseño e implantación.

VIII.       WEBGRAFIA



No hay comentarios:

Publicar un comentario