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

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

Rational Software es una de la más conocidas en sistemas CASE. y todas sus variantes. pero los sistemas CASE generalmente no se enfocan en el codificado/escritura/compilado. construcción y administración de versiones necesarias para desarrollar y administrar un sistema o paquete de software. Collab. Su compañia. Jim Rumbaugh. Herramientas híbridas son un nuevo fenómeno. gcc. Ambientes de Construcción e Híbridos. Hay herramientas CASE para casi todo tipo de especialización que uno puede pensar. Algunas de estas herramientas vienen por default en ambientes UNIX.Hay generalmente tres tipos de sistemas CASE: Herramientas de Diseño. Este tipo de herramientas (make. de generación de documentación a desarrollo de sistemas embedidos como teléfonos celulares. suportando de tres a cuatro versiones de sistemas operativos. 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. Text/groff) que vienen con UNIX son herramientas de desarrollo base. 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. como aquellas herramientas y utilidades que sirven para editar y compilar software. los procesos de trabajo son complejos. 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 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. documentación. cvs/rcs. de diseño de base de datos a data warehousing. 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.NET. en vez de esto se encargan del proceso de diseño. Herramientas de construcción auxilian equipos grandes en la construcción y administración de liberación de paquetes de software. documentación. Buenos ejemplos incluyen Sourceforge. . refinamiento.

Master your semester with Scribd & The New York Times

Special offer for students: Only $4.99/month.

Master your semester with Scribd & The New York Times

Cancel anytime.