You are on page 1of 8

HERRAMIENTAS DE DISEÑO

INTRODUCCIÓN

Las herramientas CASE son un conjunto de aplicaciones informáticas,


usadas para automatizar actividades del ciclo de vida de desarrollo de sistemas
(SDLC). Las herramientas CASE son usadas por los Directores de proyectos de
software, analistas e Ingenieros para desarrollar sistemas de software.

Existe un gran número de Herramientas CASE disponibles para simplificar


varias etapas en el desarrollo del ciclo vital del Software, como por ejemplo
herramientas de análisis, diseño de herramientas, Gestión de proyectos de
herramientas, Proyectos de gestión de herramientas de Bases de datos, gestión
de herramientas de Bases de datos, deben nombrarse también algunas
Herramientas de Documentación.

El uso de Herramientas CASE acelera el desarrollo del proyecto con tal


de producir los resultados deseados y ayuda a encontrar imperfecciones antes
de proseguir con la siguiente etapa del desarrollo de Software

1
HERRAMIENTAS DE DISEÑO

CONCEPTOS

HERRAMIENTAS CASE

Son 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. Como es sabido, los estados en el Ciclo de
Vida de desarrollo de un Software son: Investigación Preliminar, Análisis, Diseño,
Implementación e Instalación.

Es el nombre que se le da al software que se utiliza para dar soporte a las


actividades del proceso software, tales como la ingeniería de requisitos, diseño,
desarrollo y prueba. (Sommerville, 2005)

CASE:(Computer Aided Software Engineering, Ingeniería de Software


Asistida por Computadora)

Las Herramientas CASE fueron desarrolladas para automatizar procesos


y facilitar las tareas de coordinación de los eventos que necesitan ser mejorados
en el ciclo de desarrollo de software. La mejor razón para la creación de estas
herramientas fue el incremento en la velocidad de desarrollo de los sistemas. Por
esto, las compañías pudieron desarrollar sistemas sin encarar el problema de
tener cambios en las necesidades del negocio, antes de finalizar el proceso de
desarrollo.

Las herramientas CASE también permiten a los analistas tener más


tiempo para el análisis y diseño y minimizar el tiempo para codificar y probar.

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. La mejora de calidad se consigue reduciendo
sustancialmente muchos de los problemas de análisis y diseño, inherentes a los
proyectos de mediano y gran tamaño (lógica del diseño, coherencia,
consolidación, etc.). La mejora de productividad se consigue a través de la
automatización de determinadas tareas, como la generación de código y la
reutilización de objetos o módulos.

2
HERRAMIENTAS DE DISEÑO

CARACTERÍSTICAS COMUNES DE UNA HERRAMIENTA CASE


 Operaciones iniciales.

Los sistemas CASE almacenan información por proyecto, cada aplicación


es considerada como un proyecto. La información que describe cada
proyecto se mantiene por separado de la de otros.

 Menú principal de funciones.

Muchas herramientas CASE permiten que el usuario seleccione una


acción señalando su nombre o un número sobre la pantalla, ya sea a
través de un dispositivo apuntador o por el posicionamiento de una barra
luminosa por medio de las teclas de flechas y tabulador contenidas en el
teclado.

 Dibujo de diagramas de flujo de datos.

Los diagramas de flujo de datos son uno de muchos tipos de diagramas y


cartas disponibles en las herramientas CASE, es muy sencillo modificar
los diagramas.

 Diccionario por proyecto.

A medida que se formulan las especificaciones y la documentación, toda


la información con respecto al proyecto se acumula en el diccionario de
datos. Parte de la información, la graba directamente la persona que hace
uso de la herramienta, otra parte es grabada automáticamente.

Una vez que la información se encuentra en el diccionario, puede volver


a ser utilizada por el mismo proyecto en forma repetida, sin necesidad de
definirla de nuevo.

Dentro del diccionario, las entradas se pueden añadir, modificar, listar,


borrar y cambiar nombre. También es posible enlistar el contenido del
diccionario con informes preformateados. Se tiene acceso a la
información contenida en el diccionario desde cualquier parte.

3
HERRAMIENTAS DE DISEÑO

 Pantallas e informes.

Varias herramientas CASE, proporcionan un método rápido y sencillo


para desarrollar prototipos de pantallas para que los usuarios finales
trabajen con ellas. El analista puede diseñar y ejecutar pantallas y
reportes con el apoyo de un menú, definir la distribución de una pantalla
o reporte, el analista puede generar un reporte basándose en datos de
prueba proporcionados al sistema

 Herramientas para análisis y documentación.

Algunas herramientas CASE ofrecen características tales como un


conjunto de reportes que validan las descripciones del sistema.

 Utilerías.

La información utilizada por el sistema se encuentra descrita por las


funciones de utilería, estas funciones permiten definir las contraseñas de
los usuarios, los privilegios de acceso y los procedimientos de respaldo.
Las utilerías también proporcionan funciones de respaldo y recuperación.
Con ellas es posible copiar o volver a crear una parte o todo el diccionario
del proyecto a partir de una copia de respaldo

CARACTERÍSTICAS DESEABLES DE UNA CASE

Una herramienta CASE cliente / servidor provee modelo de datos, generación


de código, registro del ciclo de vida de los proyectos, comunicación entre
distintos ingenieros. Las principales herramientas son KnowledgeWare’s
Application Development Workbench, TI’s, Information Engineering Facility (IEF),
y Andersen Consulting’s Foundation for Cooperative Processing.

Deberes de una herramienta CASE Cliente / servidor:

 Proporcionar topologías de aplicación flexibles.

La herramienta debe proporcionar facilidades de construcción que permita


separar la aplicación (en muchos puntos diferentes) entre el cliente, el
servidor y más importante, entre servidores.

4
HERRAMIENTAS DE DISEÑO

 Proporcionar aplicaciones portátiles.

La herramienta debe generar código para Windows, OS/ 2, Macintosh,


Unix y todas las plataformas de servidores conocidas. Debe ser capaz, a
tiempo de corrida, desplegar la versión correcta del código en la máquina
apropiada.

 Control de Versión.

La herramienta debe reconocer las versiones de códigos que se ejecutan


en los clientes y servidores, y asegurarse que sean consistentes.
También, la herramienta debe ser capaz de controlar un gran número de
tipos de objetos incluyendo texto, gráficos, 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 definición de datos o una agrupación de módulos.

 Crear código compilado en el servidor.

La herramienta debe ser capaz de compilar automáticamente código 4GL


en el servidor para obtener el máximo 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 interacción con los
administradores de recurso debería ser negociable a tiempo de ejecución.

 Trabajar con una variedad de software intermedios.

La herramienta debe adaptar sus comunicaciones cliente / servidor al


software intermedio existente. Como mínimo la herramienta debería
ajustar los temporizadores basándose en, si el tráfico se está moviendo
en una LAN o WAN.

 Soporte multiusuarios.

La herramienta debe permitir que varios diseñadores trabajen en una


aplicación simultáneamente. Debe gestionarse los accesos concurrentes

5
HERRAMIENTAS DE DISEÑO

a la base de datos por diferentes usuarios, mediante el arbitrio y bloqueos


de accesos a nivel de archivo o de registro.

 La herramienta debe proporcionar mecanismos para controlar el


acceso y las modificaciones a los que contiene.

La herramienta debe, al menos, mantener contraseñas y permisos de


acceso en distintos niveles para cada usuario. También debe facilitar la
realización automática de copias de seguridad y recuperaciones de las
mismas, así como el almacenamiento de grupos de información
determinados, por ejemplo, por proyecto o aplicaciones.

 Desarrollo en equipo, repositorio de librerías compartidas.

Debe permitir que grupos de programadores trabajen en un proyecto


común; 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 librerías entre distintos
realizadores y múltiples herramientas; Gestiona y controla el acceso
multiusuario a los datos y bloquea los objetos para evitar que se pierdan
modificaciones inadvertidamente cuando se realizan simultáneamente.

EVOLUCIÓN DE LAS HERRAMIENTAS CASE


A inicios de los 80’s:
- Ayuda en la documentación por computadora.
- Diagramación asistida por computadora.
- Herramientas de análisis y diseño.
A mediados de los 80’s:
- Diseño automático de análisis y pruebas.
- Repositorios automáticos de información de sistemas.
Al final de los 80’s:
- Generación automática de código desde especificaciones de diseño.
A inicios de los 90’s:
- Metodología Inteligente.
- Interface de Usuario reusable como una metodología de desarrollo.

6
HERRAMIENTAS DE DISEÑO

En la Actualidad:
- Intercambio de Diagramas.
- Superestructura que facilita el uso de los diagramas más comunes.
- Infraestructura mejorada.

Las primeras herramientas para apoyar el proceso de desarrollo de


software fueron los editores y procesadores de texto, usados para escribir
programas y su documentación. Así, también algunos programas de dibujo
comenzaron a incorporar las notaciones gráficas de técnicas para diseño de
programas.
La consolidación de metodologías de desarrollo integrando diferentes
técnicas impulsó la aparición de paquetes de propósito más amplio. Surgió la
necesidad de un diccionario de datos del sistema que almacene las definiciones
usadas en las diferentes fases del desarrollo (este diccionario es lo que
actualmente se denomina repositorio). Esto contribuyó a implementar funciones
de integración y verificación de consistencia entre técnicas (asociadas a distintas
actividades y/o fases en el desarrollo). La automatización de tareas también ha
sido un aspecto de interés. En programación automática esto se ha traducido en:
generadores de pantallas e informes, generadores de esquemas físicos de
bases de datos y generadores de código para prototipos o partes de programas.
Actualmente, en Ingeniería de Software todos los desafíos y los
correspondientes enfoques de solución están siempre concebidos y llevados a
la práctica dentro del contexto de un CASE.

7
HERRAMIENTAS DE DISEÑO

REFERENCIAS BIBLIOGRÁFICAS

 MCCLURE, C. “CASE. La automatización del Software”, Editorial RA-MA,


1ª edición, 1992.

 PIATTINI, M., CALVO – MANZANO, J., CERVERA, J. Y FERNÁNDEZ, L.


“Análisis y Diseño de Aplicaciones Informáticas de Gestión: Una
perspectiva de Ingeniería de Software”, Editoria RA-MA, 2004.

 S. PRESSMAN, R. “Ingeniería del Software. Un enfoque práctico”,


Editorial Mc. Graw-Hill, 4ª edición, 1998.

 YOURDON, EDGARD, “Análisis Estructurado Moderno”, Editorial Pretice


Hall Hispanoamericana, S.A, 1ª edición, 1993

 WETHERBER, J. TURBAN, E. MC CLEAN, E., “Tecnologías de


Información para la Administración.”, CECSA, 1 ª edición en español,
2001.

You might also like