Tipos de herramientas CASE.

Tema 12 - Herramientas CASE La tecnología CASE emplea una terminología que puede resultar a veces confusa, por lo que existen numerosas clasificaciones de las herramientas CASE, aunque se pueden distinguir, en general, tres categorías de herramientas:

 

Herramientas de gestión, encargadas de la estimación, planificación y seguimiento del proyecto. Herramientas técnicas, que se dividen tradicionalmente en CASE frontales (front-end) o superiores (Upper CASE) que abarcan las primeras fases de análisis y diseño; y, CASE dorsales (back-end) o inferiores (Lower CASE) cuyo objetivo suele ser el diseño detallado y la generación de código.

Herramientas de soporte, como el sistema de repositorio/diccionario, control y configuración, seguridad, etc. Se denomina I-CASE (Integrated CASE) a las herramientas que engloban aspectos tanto de CASE frontales como dorsales, contemplando por tanto todo el ciclo de desarrollo, e IPSE (Integrated Programming Support Environment) a aquellas que, además, incluyen componentes para la gestión de proyectos y la gestión de configuración. Las fronteras entre las distintas categorías no son nítidas, y un producto puede catalogarse en distintos apartados. 3.1 Herramientas de análisis y diseño. Suponen la parte más importante de las herramientas CASE en cuanto a número de licencias vendidas y de fabricantes, y su principal objetivo es ayudar a la definición de los requisitos del sistema y sus propiedades. Dentro de esta categoría destacan las herramientas que permiten crear y modificar diagramas E/R, diagramas de flujo de datos, diagramas de estructura, diagrama de clases, etc.; también son muy importantes las herramientas de prototipado como: diseñadores de pantallas, generadores de menús, generadores de informes, y lenguajes de especificación ejecutables. Todas estas herramientas han de operar sobre un repositorio donde se va almacenando la información necesaria para el funcionamiento de la misma herramienta. Ejemplos de herramientas son: DESIGNER/2000 de Oracle, EASY CASE de Evergreen, ROSE de Rational, etc. 3.2 Generación de código y documentación. A partir de las especificaciones del diseño se puede generar código tanto para los programas como para la creación de los esquemas de bases de datos (sentencias de definición en SQL). Actualmente, las herramientas CASE también ofrecen interfaces con diversos lenguajes de cuarta generación para la construcción rápida de sistemas. Aunque no se puede generar en todos los casos el 100% del código de los programas, aumenta considerablemente la productividad, ya que genera una buena parte del código y al programador le queda sólo por completar la implementación de los programas o refinarlos. Una cuestión importante es la integración en el entorno CASE de herramientas de prueba y depuración, las facilidades de

Redocumentación. Definir requisitos y objetivos de prueba: registrar requisitos y objetivos. A la hora de almacenar las distintas versiones de un elemento.importación/exportación hacia SGBD y diccionarios externos. que consiste en automatizar las tareas asociadas a la compilación y enlace de un sistema con el fin de generar los ejecutables.2 Herramientas de ingeniería inversa. interfaces. planificar pruebas de productos. que va desde la descripción textual en una especie de pseudocódigo hasta diagramas más o menos complejos. como las que llevan a cabo:      Ingeniería inversa de datos. . Ingeniería inversa de procesos. cuyas funcionalidades van desde la identación automática del código fuente hasta la posibilidad de ir visualizando dinámicamente las llamadas existentes en el mismo.4. Dentro de este apartado destacan diversas herramientas. Reestructuración de código fuente. se almacena exclusivamente la diferencia entre éstas y la versión inmediatamente anterior (o posterior). ramas y sentencias de casos de prueba.4 Otras herramientas. que consiste en guardar sólo la primera (o la última) versión del elemento de forma completa. 3. y tal como se conocen ahora es un área bastante reciente dentro de la tecnología CASE. implementar código. que incluso permiten aislar la descripción lógica de las entidades y las reglas del negocio a partir del código de los programas. 3. Ejecutar pruebas: registrar ejecuciones de casos de prueba. y predecir la salida esperada. etc. Este tipo de herramientas ofrece cuatro tipos de capacidades:     Control de versiones. construyendo así diagramas E/R partiendo de esquemas relacionales. Diseñar pruebas: diseñar. módulos ficticios (stubs). que permiten generar diagramas a fin de que se comprenda mejor el código. trazar caminos. actividades y recursos. calidad de las pruebas. Construir entornos de ejecución de pruebas: verificar código. rastrear un requisito hasta su implementación. En entornos de desarrollo complejos se hace imprescindible la incorporación de una herramienta capaz de gestionar la configuración de los sistemas.). generación de informes. Trazabilidad de requisitos y análisis de impacto. etc. Algunas funcionalidades que suelen tener este tipo de       herramientas son: Gestión de pruebas: predecir coste y tiempo de las pruebas. para el resto de las versiones. etc. capacidades de trabajo en grupo. y generar informes. interfaces con otras herramientas. y calidad del software (funcionalidad. rendimiento. "rastrear" (tracing) requisitos. Las herramientas CASE soportan la creación automatizada de un conjunto muy variado de documentación. consultas. generar y documentar los casos de prueba. Construcción (make).1 Herramientas de gestión de configuración.3 Herramientas de prueba. así como de registrar los cambios sobre los mismos y poder recuperar versiones anteriores. 3. Las herramientas de prueba se conocen también por las siglas CAST (Computer Aided Software Testing). que permiten. y registrar casos de prueba y salidas reales. Capacidades generales. estadísticas de fallos. apartado en el que se pueden englobar: gestión del proceso. respectivamente.4. Análisis de código. las herramientas de gestión de configuración suelen emplear un almacenamiento incremental. es decir. jerárquicos o ficheros. mientras que. 3. y generar elementos de prueba tales como módulos impulsores (drivers). que son capaces de extraer la información del código fuente que describe la estructura de los elementos de datos. repetir ejecuciones. que modifican su formato o implantan un formato estándar. Evaluar pruebas: fallos de las pruebas. monitorizar pruebas. la capacidad de proporcionar almacenamiento y acceso controlado a los datos. y conocer los elementos del sistema que se ven afectados ante un cambio. y verificar requisitos.

como aquellas herramientas y utilidades que sirven para editar y compilar software. . Algunas de estas herramientas vienen por default en ambientes UNIX. Buenos ejemplos incluyen Sourceforge. Herramientas de diseño CASE auxilian grandes equipos de ingenieros en la especificación de sistemas de software y ayudan a automatizar la escritura de arquitecturas. Rational Software es una de la más conocidas en sistemas CASE. en vez de esto se encargan del proceso de diseño. y además integrar automáticamente esas piezas generadas en el IDE del desarrollador Muchas herramientas CASE utilizan el Lenguaje de Modelado Unificado (UML) desarrollador por Grady Booch. Text/groff) que vienen con UNIX son herramientas de desarrollo base.NET. Collab. de diseño de base de datos a data warehousing. suportando de tres a cuatro versiones de sistemas operativos. Hay herramientas CASE para casi todo tipo de especialización que uno puede pensar. Ambientes de Construcción e Híbridos. pero los sistemas CASE generalmente no se enfocan en el codificado/escritura/compilado. de generación de documentación a desarrollo de sistemas embedidos como teléfonos celulares. Su compañia. documentación. Herramientas híbridas son un nuevo fenómeno. Herramientas de construcción auxilian equipos grandes en la construcción y administración de liberación de paquetes de software. En un ambiente de un gran equipo o un gran paquete donde usted puede tener cinco versiones de este paquete en varios estados de desarrollo y/o desplegándose en cinco arquitecturas de hardware diferentes.Hay generalmente tres tipos de sistemas CASE: Herramientas de Diseño. Este tipo de herramientas (make. refinamiento. cvs/rcs. e Ivar Jacobsen. aplicación Servicios Web para crear un sistema distribuido que puede manejar múltiples estilos de desarrollo y la flexibilidad de agregar nuevas herramientas y servicios sin mucho trabajo. Jim Rumbaugh. gcc. documentación. construcción y administración de versiones necesarias para desarrollar y administrar un sistema o paquete de software. La disponibilidad de UML ha revolucionado la habilidad de los ingenieros de software para crear especificaciones de sistemas que pueden ser relativamente fácil de traducir en código mantenible y que funcione. y todas sus variantes. los procesos de trabajo son complejos.

Sign up to vote on this title
UsefulNot useful