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

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

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

Sign up to vote on this title
UsefulNot useful

Master Your Semester with Scribd & The New York Times

Special offer for students: Only $4.99/month.

Master Your Semester with a Special Offer from Scribd & The New York Times

Cancel anytime.