Está en la página 1de 6

TEMA: HERRAMIENTAS CASE 05-11-2013

KEVIN DIAZ 6to E


HERRAMIENTAS CASE
Las herramientas CASE (Computer Aided Software Engineering, Ingeniera de Software Asistida por
Computadora) son diversas aplicaciones informticas destinadas a aumentar la productividad en el
desarrollo de software reduciendo el costo de las mismas en trminos de tiempo y de dinero.
Estas herramientas pueden ayudar en todos los aspectos del ciclo de vida de desarrollo del
software en tareas como el proceso de realizar un diseo del proyecto, clculo de costos,
implementacin de parte del cdigo automticamente con el diseo dado, compilacin
automtica, documentacin o deteccin de errores entre otras. Ya en los aos 70 un proyecto
llamado ISDOS dise un lenguaje y por lo tanto un producto que analizaba la relacin existente
entre los requisitos de un problema y las necesidades que stos generaban, el lenguaje en
cuestin se denominaba PSL (Problem Statement Language) y la aplicacin que ayudaba a buscar
las necesidades de los diseadores PSA (Problem Statement Analyzer).
Aunque sos son los inicios de las herramientas informticas que ayudan a crear nuevos proyectos
informticos, la primera herramienta CASE fue Excelerator que sali a la luz en el ao 1984 y
trabajaba bajo una plataforma PC.
Las herramientas CASE alcanzaron su techo a principios de los aos 90. En la poca en la que IBM
haba conseguido una alianza con la empresa de software AD/Cycle para trabajar con sus
mainframes, estos dos gigantes trabajaban con herramientas CASE que abarcaban todo el ciclo de
vida del software. Pero poco a poco los mainframes han ido siendo menos utilizados y
actualmente el mercado de las Big CASE ha muerto completamente abriendo el mercado de
diversas herramientas ms especficas para cada fase del ciclo de vida del software.

Historia
En la dcada de los setenta el proyecto ISDOS desarroll un lenguaje llamado "Problem Statement
Language" (PSL) para la descripcin de los problemas de usuarios y las necesidades de solucin de
un sistema de informacin en un diccionario computarizado. Problem Statement Analyzer (PSA)
era un producto asociado que analizaba la relacin de problemas y necesidades.
Pero la primera herramienta CASE como hoy la conocemos fue "Excelerator" en 1984, era para PC.
Actualmente la oferta de herramientas CASE es muy amplia y tenemos por ejemplo el EASYCASE o
WINPROJECT.
TEMA: HERRAMIENTAS CASE 05-11-2013
KEVIN DIAZ 6to E

Clasificacin
Aunque no es fcil y no existe una forma nica de clasificarlas, las herramientas CASE se pueden
clasificar teniendo en cuenta los siguientes parmetros:
1. Las plataformas que soportan.
2. Las fases del ciclo de vida del desarrollo de sistemas que cubren.
3. La arquitectura de las aplicaciones que producen.
4. Su funcionalidad.
La siguiente clasificacin es la ms habitual basada en las fases del ciclo de desarrollo que cubren:
Upper CASE (U-CASE), herramientas que ayudan en las fases de planificacin, anlisis
de requisitos y estrategia del desarrollo, usando, entre otros diagramas UML.
Middle CASE (M-CASE), herramientas para automatizar tareas en el anlisis y diseo de
la aplicacin.
Lower CASE (L-CASE), herramientas que semi-automatizan la generacin de cdigo,
crean programas de deteccin de errores, soportan la depuracin de programas y
pruebas. Adems automatizan la
Por funcionalidad podramos diferenciar algunas como:
Herramientas de generacin semiautomtica de cdigo.
Editores UML.
Herramientas de Refactorizacin de cdigo.
Componentes de una herramienta case
De una forma esquemtica podemos decir que una herramienta CASE se compone de los
siguientes elementos:
TEMA: HERRAMIENTAS CASE 05-11-2013
KEVIN DIAZ 6to E
Repositorio (diccionario) donde se almacenan los elementos definidos o creados por la
herramienta, y cuya gestin se realiza mediante el apoyo de un Sistema de Gestin de
Base de Datos (SGBD) o de un sistema de gestin de ficheros.
Meta modelo (no siempre visible), que constituye el marco para la definicin de las
tcnicas y metodologas soportadas por la herramienta.
Carga o descarga de datos, son facilidades que permiten cargar el repertorio de la
herramienta CASE con datos provenientes de otros sistemas, o bien generar a partir
de la propia herramienta esquemas de base de datos, programas, etc. que pueden, a
su vez, alimentar otros sistemas. Este elemento proporciona as un medio
de comunicacin con otras herramientas.
Comprobacin de errores, facilidades que permiten llevar a cabo un anlisis de la
exactitud, integridad y consistencia de los esquemas generados por la herramienta.
Interfaz de usuario, que constar de editores de texto y herramientas de diseo
grfico que permitan, mediante la utilizacin de un sistema de ventanas, iconos y
mens, con la ayuda del ratn, definir los diagramas, matrices, etc. que incluyen las
distintas metodologas.
Estructura general de una herramienta case
La estructura CASE se basa en la siguiente terminologa:
CASE de alto nivel son aquellas herramientas que automatizan o apoyan las fases finales o
superiores del ciclo de vida del desarrollo de sistemas como la planificacin de sistemas, el
anlisis de sistemas y el diseo de sistemas.
CASE de bajo nivel son aquellas herramientas que automatizan o apoyan las fases finales o
inferiores del ciclo de vida como el diseo detallado de sistemas, la implantacin de
sistemas y el soporte de sistemas.
CASE cruzado de ciclo de vida se aplica a aquellas herramientas que apoyan actividades
que tienen lugar a lo largo de todo el ciclo de vida, se incluyen actividades como la gestin
de proyectos y la estimacin.
Estado Actual
En las ltimas dcadas se ha trabajado en el rea de desarrollo de sistemas para encontrar
tcnicas que permitan incrementar la productividad y el control de calidad en cualquier proceso
de elaboracin de software, y hoy en da la tecnologa CASE (Computer Aided Software
Engineering) reemplaza al papel y al lpiz por el ordenador para transformar la actividad de
desarrollar software en un proceso automatizado.
La tecnologa CASE supone la informatizacin de la informticaes decir la automatizacin del
desarrollo del software--, contribuyendo as a elevar la productividad y la calidad de en el
desarrollo de los sistemas de informacin de forma anloga a lo que suponen las tcnicas
TEMA: HERRAMIENTAS CASE 05-11-2013
KEVIN DIAZ 6to E
CAD/CAM en el rea de fabricacin.
En este nuevo enfoque que persigue mejorar la calidad del software e incrementar la
productividad en el proceso de desarrollo del mismo, se plantean los siguientes objetivos:
<<> Permitir la aplicacin prctica de metodologas, lo que resulta muy difcil sin emplear
herramientas.
<<> Facilitar la realizacin de prototipos y el desarrollo conjunto de aplicaciones.
<<> Simplificar el mantenimiento del software.
Mejorar y estandarizar la documentacin.
Aumentar la portabilidad de las aplicaciones.
Facilitar la reutilizacin de componentes de software
Permitir un desarrollo y un refinamiento (visual) de las aplicaciones, mediante la
utilizacin de controles grficos (piezas de cdigo reutilizables).
Integracin de las herramientas case en el futuro
Las herramientas CASE evolucionan hacia tres tipos de integracin:
1. La integracin de datos permite disponer de herramientas CASE con
diferentes estructuras de diccionarios locales para el intercambio de datos.

2. La integracin de presentacin confiere a todas las herramientas CASE el mismo
aspecto.
3. La integracin de herramientas permite disponer de herramientas CASE capaces de
invocar a otras CASE de forma automtica.
Clasificacin de las herramientas case
No existe una nica clasificacin de herramientas CASE y, en ocasiones, es difcil incluirlas en
una clase determinada. Podran clasificarse atendiendo a:
- Las plataformas que soportan.
- Las fases del ciclo de vida del desarrollo de sistemas que cubren.
- La arquitectura de las aplicaciones que producen.
- Su funcionalidad.
CASE es una combinacin de herramientas software (aplicaciones) y de metodologas de
desarrollo:
Las herramientas permiten automatizar el proceso de desarrollo del software.
Las metodologas definen los procesos automatizar.
Una primera clasificacin del CASE es considerando su amplitud:
TOOLKIT: es una coleccin de herramientas integradas que permiten automatizar un conjunto de
tareas de algunas de las fases del ciclo de vida del sistema informtico: Planificacin estratgica,
TEMA: HERRAMIENTAS CASE 05-11-2013
KEVIN DIAZ 6to E
Anlisis, Diseo, Generacin de programas.
WORKBENCH: Son conjuntos integrados de herramientas que dan soporte a la automatizacin del
proceso completo de desarrollo del sistema informtico. Permiten cubrir el ciclo de vida completo.
El producto final aportado por ellas es un sistema en cdigo ejecutable y su documentacin.
Una segunda clasificacin es teniendo en cuenta las fases (y/o tareas) del ciclo de vida que
automatizan:
UPPER CASE: Planificacin estratgica, Requerimientos de Desarrollo Funcional de Planes
Corporativos.
MIDDLE CASE: Anlisis y Diseo.
LOWER CASE: Generacin de cdigo, test e implantacin
Caractersticas Deseables De Una Case
Una herramienta CASE cliente / servidor provee modelo de datos, generacin de
cdigo, registro del ciclo de vida de los proyectos, comunicacin entre distintos ingenieros. Las
principales herramientas son KnowledgeWares Application Development Workbench, TIs,
Information Engineering Facility (IEF), y Andersen Consultings Foundation for Cooperative
Processing.
Deberes de una herramienta CASE Cliente / servidor:
Proporcionar topologas de aplicacin flexibles. La herramienta debe proporcionar facilidades
de construccin que permita separar la aplicacin (en muchos puntos diferentes) entre el cliente,
el servidor y ms importante, entre servidores.
Proporcionar aplicaciones porttiles. La herramienta debe generar cdigo para Windows, OS/ 2,
Macintosh, Unix y todas las plataformas de servidores conocidas. Debe ser capaz, a tiempo de
corrida, desplegar la versin correcta del cdigo en la mquina apropiada.
Control de Versin. La herramienta debe reconocer las versiones de cdigos que se ejecutan en
los clientes y servidores, y asegurarse que sean consistentes. Tambin, la herramienta debe ser
capaz de controlar un gran nmero de tipos de objetos incluyendo texto, grficos, mapas de
bits, documentos complejos y objetos nicos, tales como definiciones de pantallas y
de informes, archivos de objetos y datos de prueba y resultados. Debe mantener versiones de
objetos con niveles arbitrarios de granularidad; por ejemplo, una nica definicin de datos o una
agrupacin de mdulos.
Crear cdigo compilado en el servidor. La herramienta debe ser capaz de compilar
automticamente cdigo 4GL en el servidor para obtener el mximo performance.
Trabajar con una variedad de administradores de recurso. La herramienta debe adaptarse ella
misma a los administradores de recurso que existen en varios servidores de la red;
su interaccin con los administradores de recurso debera ser negociable a tiempo de ejecucin.
Trabajar con una variedad de software intermedios. La herramienta debe adaptar
sus comunicaciones cliente / servidor al software intermedio existente. Como mnimo la
herramienta debera ajustar los temporizadores basndose en, si el trfico se est moviendo en
una LAN o WAN.
Soporte multiusuarios. La herramienta debe permitir que varios diseadores trabajen en una
TEMA: HERRAMIENTAS CASE 05-11-2013
KEVIN DIAZ 6to E
aplicacin simultneamente. Debe gestionarse los accesos concurrentes a la base de datos por
diferentes usuarios, mediante el arbitrio y bloqueos de accesos a nivel de archivo o de registro.
Seguridad. La herramienta debe proporcionar mecanismos para controlar el acceso y las
modificaciones a los que contiene. La herramienta debe, al menos, mantener contraseas y
permisos de acceso en distintos niveles para cada usuario. Tambin debe facilitar la realizacin
automtica de copias de seguridad y recuperaciones de las mismas, as como
el almacenamiento de grupos de informacin determinados, por ejemplo, por proyecto o
aplicaciones.
Desarrollo en equipo, repositorio de libreras compartidas. Debe permitir que grupos de
programadores trabajen en un proyecto comn; debe proveer facilidades de check-in/ check-out
registrar formas, widgets, controles, campos, objetos de negocio, DLL, etc.; debe proporcionar
un mecanismo para compartir las libreras entre distintos realizadores y mltiples herramientas;
Gestiona y controla el acceso multiusuario a los datos y bloquea los objetos para evitar que se
pierdan modificaciones inadvertidamente cuando se realizan simultneamente.

También podría gustarte