Herramientas CASE

30
 INDICE  No. Pag. 1. Introducción 1 2. ¿Qué significa CASE? 2 2.1 Herramienta CASE según ... 2 2.2 Bloques básicos de CASE 2 2.2.1 Los bloques de construcción de CASE 3 2.2.2 Ciclo de vida del desarrollo de un Sistema 3 2.3 Taxonomía de herramientas case 6 2.3.1 Clasificación de herramientas CASE 6 2.4 Herramientas CASE Cliente/Servidor (C/S) 10 2.4.1 Arquitectura Cliente/Servidor (C/S) 10 2.4.2 Evolución de la tecnología C/S 11 2.2.3 CASE al nivel de Estructura de Costos 11 2.4.4 CASE al nivel de l Rango de Aplicación (CASE C liente/Servidor) 13 2.4.5 Clasif ic ació n d e las herramien ta s CASE C lie nte/S ervid or 14 3. Herramientas CASE en e l mercado actual 14 3.1.1 PowerBuilder de PowerSoft 14 3.1.2 Visual Basic 15 3.1.3 Visual FoxPro y Visual C++ 15 3.1.4 Oracle 15 3.1.5 Erwin 16 3.1.6 Cool Stuf, de Sterling Software 16 3.1.7 Informix 16 3.2 Herramientas CASE tradicionales 16 3.2.1 Opal, de Computer Associates 16 3.2.2 Trabajando en equipo 17 3.3 Evaluacn de Herramientas CASE´s 18 3.3.1 Características Generales 18 3.3.2 Diagramas 19 3.3.3 Ayuda 20 3.3.4 Esquema de la base de datos 21 3.3.5 Código que genera el lenguaje 22 3.3.6 Ingeniería hacia delante y de reversa 23 3.3.7 Sincronización de la Base de Datos 25 3.3.8 Diseño 26 3.3.9 Web 27 3.3.10 Metodología 28 3.3.11 Reportes 28 3.3.12 Conclusión 29

Transcript of Herramientas CASE

Page 1: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 1/30

 

INDICE

 No. Pag.

1. Introducción 12. ¿Qué significa CASE? 2

2.1 Herramienta CASE según ... 2

2.2 Bloques básicos de CASE 22.2.1 Los bloques de construcción de CASE 32.2.2 Ciclo de vida del desarrollo de un Sistema 3

2.3 Taxonomía de herramientas case 62.3.1 Clasificación de herramientas CASE 6

2.4 Herramientas CASE Cliente/Servidor (C/S) 102.4.1 Arquitectura Cliente/Servidor (C/S) 102.4.2 Evolución de la tecnología C/S 112.2.3 CASE al nivel de Estructura de Costos 112.4.4 CASE al nivel de l Rango de Aplicación (CASE Cliente/Servidor) 132.4.5 Clasificación de las herramientas CASE Cliente/Servidor 14

3. Herramientas CASE en el mercado actual 143.1.1 PowerBuilder de PowerSoft 143.1.2 Visual Basic 153.1.3 Visual FoxPro y Visual C++ 153.1.4 Oracle 153.1.5 Erwin 163.1.6 Cool Stuf, de Sterling Software 163.1.7 Informix 16

3.2 Herramientas CASE tradicionales 163.2.1 Opal, de Computer Associates 163.2.2 Trabajando en equipo 17

3.3 Evaluación de Herramientas CASE´s 183.3.1 Características Generales 183.3.2 Diagramas 193.3.3 Ayuda 203.3.4 Esquema de la base de datos 213.3.5 Código que genera el lenguaje 223.3.6 Ingeniería hacia delante y de reversa 233.3.7 Sincronización de la Base de Datos 253.3.8 Diseño 263.3.9 Web 273.3.10 Metodología 283.3.11 Reportes 28

3.3.12 Conclusión 29

Page 2: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 2/30

 

HERRAMIENTAS CASE EN LOS SISTEMAS DEINFORMACIÓN

1. Introducción

Actualmente la tendencia es hacia un mundo heterogéneo en el cual convivan diversos productos quecomplementen y en ese contexto contar con herramientas de desarrollo abiertas con conectividad a diver plataformas, basadas en tecnología orientada a objetos y que permitan la reutilización del software. De este mola mayoría de las empresas se han extendido a la adquisición de herramientas CASE ( Computer Aided Softw

 Engineering , Ingeniería Asistida por Computadora) con el fin de automatizar los aspectos clave de todo lo qimplica el proceso de desarrollo de un sistema e incrementar su posición en el mercado competitivo. Sin embaren algunos se obtienen elevados costos tanto en la adquisición de herramientas y costos de entrenamiento

 personal, como a la falta de adaptación de tal herramienta a la arquitectura de la información y a metodologíasdesarrollo utilizadas por la organización.

Por otra parte, algunas herramientas CASE no ofrecen o evalúan soluciones potenciales para los problemrelacionados con sistemas o virtualmente no llevan a cabo ningún análisis de los requerimientos de la aplicaci

Sin embargo, CASE proporciona un conjunto de herramientas semiautomatizadas y automatizadas que esdesarrollando una cultura de ingeniería nueva para muchas empresas. Uno de los objetivos más importante CASE (a largo plazo) es conseguir la generación automática de programas desde una especificación al niveldiseño.

Ya hemos hecho mención acerca de heterogeneidad de los ambientes de computación, de que cada vez maparecen nuevas tecnologías que se complementan y crecen uniendo fortalezas, efecto que sin duda se h

 presente en el mundo de las herramientas de desarrollo, por ejemplo alrededor de Java por su concepciónuniversalidad y alrededor de CASE en aquellos productos que carecen de esta herramienta, por mencionar algunY aún cuando los usuarios de estas herramientas son quienes finalmente tienen el dolor de cabeza ante tanalternativas para desarrollar, existe libertad de seleccionar herramientas de desarrollo que están disponibles enmercado de acuerdo a gustos y necesidades, por ejemplo: Cool Stuf, Erwin, Informix NewEra, Lotus No

 Domino, Power Builder, Opal, Oracle Developer 2000, Visual Basic, y Visual Age de IBM . Si bien cada unaellas cuenta con un valor diferenciador, en todas está presente la tecnología abierta, una búsqueda de conectividcada vez mayor, la simplicidad en su uso y sin lugar a dudas la velocidad para desarrollar. La mayoría está basaen tecnología de la Programación Orientada a Objetos o soporta algunas de las reglas de su creador Edgar F. Coademás generan aplicaciones para tecnologías que en la actualidad marcan la pauta a seguir como los SistemDistribuidos, Cliente/Servidor y por supuesto que Java.

2. ¿ Qué significa CASE? 

Los ingenieros del software reconocen ahora que necesitan más herramientas y más variadas (las herramien

manuales no satisfacen las demandas actuales de los sistemas basados en computadoras), y necesitan un taorganizado y eficiente en el cual puedan ubicar sus herramientas. El taller de la ingeniería del softwaredenomina un entorno de apoyo de proyectos integrados y el conjunto de herramientas que llena ese taller

Page 3: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 3/30

denomina un entorno de apoyo de proyectos integrados y el conjunto de herramientas que llena ese taller 

2.1 Herramienta CASE según ...

• Henry David Crockett (Portland State University), "Las herramientas CASE se ven simplemente coherramientas que cualquiera puede escoger y utilizar (como un martillo) para desarrollar un sistemainformación, su selección e implementación casi siempre llevará a una reducida productividad y calidLa selección e implementación de herramientas CASE son un proceso de múltiples etapas que permerrores fatales en cada etapa. Uno de los errores más comunes es escoger una herramienta CASE q

apoye un método desconocido para los diseñadores".

• Alan Chimura (CASE Associates), "Las herramientas CASE incluyen manejadores, métodos, técnicdisciplina, e instrucciones, todos trabajando juntos. Definir CASE menos ampliamente y presentarlo sinsuficiente entorno de apoyo es un acto de negligencia".

• Las herramientas CASE abarcan cada etapa del proceso de ingeniería y cada actividad que se desarrolllo largo del mismo. CASE está formado por un conjunto de bloques que comienzan en el nivel hardware y del sistema operativo y acaban en cada una de las herramientas.

• CASE se refiere a herramientas para el desarrollo de sistemas que constan de cinco component

herramientas de diagramación, depósito de información, generadores de interfaces, generadores de códy herramientas de administración. Las herramientas CASE hacen hincapié en las actividades de alto nivaunque el objetivo a largo plazo es abarcar las actividades de análisis, diseño y desarrollo.

En resumen, las herramientas CASE son un complemento de la caja de herramientas del ingeniero del softwaCASE proporciona al ingeniero la posibilidad de automatizar actividades manuales y de mejorar su visión genede la ingeniería. Al igual que las herramientas de ingeniería y de diseño asistidos por computadora que utilizan ingenieros de otras disciplinas. Las herramientas CASE ayudan a asegurar la calidad de un producto desdediseño antes de construirlo.

2.2 Bloques básicos de CASE

La ingeniería del software asistida por computadora puede ser tan sencilla como una única herramienta que presu apoyo para una única actividad de ingeniería del software, o bien puede ser tan compleja como todo un entoque abarque herramientas, una base de datos, personas, hardware, una red, sistemas operativos, estándares, y otmuchos componentes más.

2.2.1 Los bloques de construcción de CASE

Cada bloque de construcción forma un fundamento para el siguiente, estando las herramientas situadas en la pasuperior de la estructura de los niveles de Hardware y Software. Es interesante tener en cuenta que el fundamede los entornos CASE efectivos tiene relativamente poco que ver con las herramientas de ingeniería del softwen sí. Más bien, los entornos que tienen éxito para la ingeniería del software se construyen basándose en uarquitectura de entorno que abarca un hardware y un sistema software adecuado. Además, la arquitectura entorno debe considerar patrones de trabajo humano que se aplican durante el proceso de ingeniería de softwaLa arquitectura del entorno debe de considerar los patrones de trabajo humano que se aplicaran durante el procde ingeniería del software. Las arquitecturas del entorno constan de una plataforma hardware y de un apoyosistema operativo (incluyendo el software de red y de gestión de la base de datos), constituyen los fundamentosCASE. Aunque su entorno en si requiere de otros bloques de construcción, existe un conjunto de servicios

 portabilidad que proporciona un puente entre las herramientas CASE y su marco de referencia de integración yarquitectura del entorno.

Page 4: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 4/30

 

El marco de referencia de integración es una colección de programas más especializados que capacitan a herramientas CASE individuales para comunicarse entre sí, para crear una base de datos del proyecto, y pmostrar el mismo aspecto al usuario final (el ingeniero del software). Los servicios de portabilidad permiten las herramientas CASE y su marco de referencia de integración, migren entre distintas plataformas del hardwarsistemas operativos sin un mantenimiento adaptativo que resulte significativo.

Los bloques de construcción representan un fundamento exhaustivo para la integración de herramientas CASE. embargo, la mayor parte de las herramientas CASE utilizados actualmente no han sido construidas emplean

todos los bloques de construcción que antes descritos. De hecho, algunas herramientas CASE siguen siensoluciones puntuales. Esto es, se utiliza una herramienta para que preste apoyo en una actividad de ingeniería software concreta (p. ej.: análisis y modelado), pero esta herramienta no se comunica directamente con otras.decir, no esta unida a una base de datos del proyecto y no forma parte de un entorno integrado CASE (I-CASaún cuando no es lo ideal, se puede utilizar una herramienta CASE lo suficientemente eficiente, aunque se trateuna solución puntual.

2.2.2Ciclo de vida del desarrollo de un sistema con las herramientas CASE y los métodtradicionales

Utilizar herramientas CASE para el desarrollo de un sistema tiene una ligera ventaja sobre los sistemtradicionales (ver Figuras a y b), y entre los beneficios ofrecidos por la tecnología CASE se encuentran siguientes:

• Facilidad para llevar a cabo la tarea de revisión de especificaciones del sistema así como representaciones gráficas (lo que aumenta la posibilidad de realizar la tarea).

• Facilidad para desarrollar prototipos de sistemas por medio de la capacidad para cambiar especificacioy, por otro lado, para determinar el efecto que sobre el desempeño del sistema tendrían otras alternativas

• Generación de código.• Soporte para mantenimiento como resultado de haber guardado las especificaciones del sistema en

depósito central de información.• Aumentar las posibilidades de satisfacer los requerimientos del usuario.

Page 5: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 5/30

 

ANÁLISIS

Requerimientos

Especificacionesdel Programa

Código fuentedel Programa

Sistematerminado

DISEÑO

DISEÑO YCODIFICACIÓN

DEL PROGRAMA

PRUEBA DELPROGRAMA

INSTALACIÓN

Preguntas dediseño

Preguntas deespecificaciones del programa

Errores y fallasdel programa

Fallas en lainstalación

Figura a. Ciclo de vida del desarrollo de Sistemas Tradicional

Page 6: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 6/30

 

ANÁLISIS

Requerimientos

Entidades de diseñoCASE

Depósito CASE

Sistema de computolibre de errores

DISEÑO

JUEGO DEHERRAMIENTASCASE DE BAJO

NIVEL

JUEGO DE HERRAM.CASE DE NIVEL

SUPERIOR(GENERADOR DE

CÓDIGO)

INSTALACIÓN

Preguntas dediseño

Fallas einconsistencias del diseño

Figura b. Ciclo de vida del desarrollo de Sistemas CASE

Page 7: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 7/30

 

Herramientas CASE

2.3 Taxonomía de herramientas case

Existe un cierto numero de riesgos que son inherentes siempre que se intenta efectuar unacategorización de las herramientas CASE. Aunado a esto, una implicación consistente en que paracrear un entorno CASE efectivo, se deben de implementar todas las categorías de herramientas, lo cualsimplemente es incierto. Se puede crear una confusión (o un antagonismo) al ubicar una herramientaespecifica dentro de una categoría cuando algunas personas creen lo contrario. De este modo, podría

 pensarse que se ha omitido la categoría completa, eliminando un conjunto completo de herramientas para su inclusión en el entorno CASE global. Además, una categorización sencilla tiende a ser plana,es decir, no se muestra la interacción jerárquica de herramientas o las relaciones que existen entre ellas.Pese a estos riesgos, es necesario crear una taxonomía de herramientas CASE para comprender mejor tanto la amplitud de CASE como los puntos en los que se pueden aplicar estas herramientas dentro del proceso del software.

2.3.1Clasificación de herramientas CASE

Las herramientas CASE pueden clasificarse por su función, su papel como instrumentos paraadministradores o personal técnico, por su utilización en los distintos pasos del proceso de ingenieríadel software, la arquitectura de entorno (hardware y software) que les presta su apoyo, o incluso por suorigen o su coste. En muchos casos, las únicas herramientas disponibles para el ingeniero del softwareeran compiladores y editores de texto. Estas herramientas abarcan solo la codificación, actividad queno debería de ocupar mas del 20% del proceso global del software. La taxonomía que se presentaenseguida, utiliza como criterio principal la función.

 Herramientas de la ingeniería de la información. Al modelar los requisitos de información estratégicade una organización, las herramientas de la ingeniería de la información proporcionan un metamodelodel cual se derivan sistemas de información específicos. En lugar de centrarse en los requisitos de unaaplicación especifica, estas herramientas CASE modelan la información de negocios cuando esta setransfiere entre distintas entidades organizativas en el seno de una compañía. El objetivo primordial delas herramientas de esta categoría consiste en representar objetos de datos de negocios, sus relaciones,y la forma en que fluyen estos objetos de datos entre distintas zonas de negocio en el seno de la

compañía.

 Modelado de procesos y herramientas de administración. Si una organización intenta mejorar un proceso de negocios (o de software) lo primero que debe de hacer es entenderlos. Las herramientas demodelado de procesos (también denominadas herramientas de tecnología de procesos) se utilizan pararepresentar los elementos clave del proceso para entenderlo lo mejor posible. Estas herramientastambién pueden proporcionar vínculos con descripciones de procesos que ayuden a quienes esténimplicados en el proceso de comprender las tareas que se requieren para llevar a cabo ese proceso.Además, también pueden proporcionar vínculos con otras herramientas que proporcionen un apoyo para actividades de proceso ya definidas.

 Herramientas de planificación de proyectos. Las herramientas de esta categoría se concentran en dos

áreas primordiales: estimación de esfuerzos de proyecto y de costes de software, y planificación de proyectos. Las primeras calculan su esfuerzo estimado, la duración del proyecto y su número de  personas empleando una o más de las técnicas presentadas. Por su parte, las herramientas de planificación de proyectos capacitan al administrador para definir todas las tareas del proyecto (laestructura de desglose de tareas), para crear una red de tareas (normalmente empleando una entradagráfica), para representar la interdependencia entre tareas y para modelar la cantidad de paralelismoque sea posible para ese proyecto.

Page 8: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 8/30

 

Herramientas CASE

 Herramientas de análisis de riesgos. La identificación de riesgos potenciales y el desarrollo de un plan para mitigar, monitorizar y administrar esos riesgos tiene una importancia fundamental en los grandes proyectos. Estas herramientas en si, capacitan al administrador del proyecto para construir una tabla deriesgos proporcionando una guía detallada en la identificación y análisis de riesgos. Herramientas de administración de proyectos. La planificación del proyecto y el plan del proyectodeben de seguirse y de monitorizarse de forma continua. Además, el gestor deberá de utilizar lasherramientas que recojan métricas que en ultima instancia proporcionen una indicación de la calidad

del producto del software. Las herramientas de esta categoría suelen ser extensiones de herramientas de planificación de proyectos.

 Herramientas de seguimiento de requisitos. Cuando se desarrollan grandes sistemas, el sistema  proporcionado suele no satisfacer los requisitos especificados por el cliente. El objetivo estasherramientas es proporcionar un enfoque sistemático para el aislamiento de requisitos, comenzando por la solicitud del cliente de una propuesta (RFP) 0 especificación. Las herramientas de trazado de requi-sitos típicas combinan una evaluación de textos por interacción humana. Con un sistema de gestión de bases de datos que almacena y categoriza todos y cada uno de los requisitos del sistema que se analizan partir de la RFP o especificación original.

 Herramientas de métricas y gestión. Las métricas de software mejoran la capacidad del administrador 

 para controlar y coordinar el proceso del software y la capacidad del ingeniero para mejorar la calidaddel software que se produce. Las métricas y herramientas de medida actuales se centran en procesos, proyectos y características del producto. Las herramientas orientadas a la administración capturanmétricas especificas del proyecto (p. ej.: LDC/persona-mes, defectos por punto de función) que  proporcionan una indicación global de productividad o de calidad. Las herramientas orientadastécnicamente determinan métricas técnicas que proporcionan una mejor visión de La calidad del diseñoo del código.

Muchas de las herramientas métricas avanzadas mantienen una base de datos de medidas de medias dela industria. Basándose en características de proyectos y de productos proporcionados por el usuario,estas herramientas «califican» los numero locales frente a los valores medios de la industria (y frente alrendimiento local anterior) y sugieren estrategias para llegar a mejoras.

 Herramientas de documentación. Las herramientas de producción de documentos y de autoedición prestan su apoyo a casi todos los aspectos de la ingeniería del software, y representan una importanteoportunidad de «aprovechamiento» para todos los desarrollares de software. La mayor parte de lasorganizaciones dedicadas al desarrollo de software invierte una cantidad de tiempo considerable en eldesarrollo de documentos, y en muchos casos el proceso de documentación en 51' resulta bastantedeficiente. No es infrecuente que una organización de desarrollo de software invierta hasta Un 20 0 un30 por ciento de su esfuerzo global de desarrollo de software en la documentación. Por esta razón, lasherramientas de documentación suponen una oportunidad importante para mejorar la productividad.

 Herramientas de software de sistema. CASE es una tecnología de estaciones de trabajo. Por tanto, elentorno CASE debe adaptarse a un software de sistema en red de alta calidad, al correo electrónico, a

los boletines electrónicos y a otras capacidades de comunicaciones.

 Herramientas de control de calidad. La mayor parte de las herramientas CASE que afirman que tienencomo principal interés el control de calidad son en realidad herramientas métricas que hace unaauditoría del código fuente para determinar Si se ajusta o no a ciertos estándares del lenguaje. Otrasherramientas extraen métricas en un esfuerzo por extrapolar la calidad del software que sé esta constru-yendo.

Page 9: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 9/30

 

Herramientas CASE

 Herramientas de gestión de bases de datos. El software de gestión de bases de datos sirve comofundamento para establecer una base de datos CASE (depósito), que también se denominara- base dedatos del proyecto. Dado el énfasis acerca de los objetos de configuración, las herramientas de gestiónde bases de datos para CASE pueden evolucionar a partir de los sistemas de gestión de bases de datosrelacionales (SGBDR) para transformarse en sistemas de gestión de bases de datos orientadas a objetos(SGBDOO).

 Herramientas de gestión de configuración de software. La gestión de configuración de software(GCS) se encuentra en el núcleo de todos los entornos CASE. Las herramientas pueden ofrecer suasistencia en las cinco tareas principales de CICS: identificación, control de versiones, control decambios, auditoría y contabilidad de estados. La base de datos CASE proporciona Un mecanismo paraidentificar todos los elementos de configuración y relacionarlo con otros elementos; el proceso decontrol que se describa se puede implementar con ayuda de herramientas especializadas; un accesosencillo a los elementos de configuración individuales facilita el proceso de auditoría; y lasherramientas de comunicación CASE pueden mejorar enormemente la contabilidad de estados(ofreciendo información acerca de los cambios a todos aquellos que necesiten conocerlos).

 Herramientas de análisis y diseño. Estas herramientas capacitan al ingeniero del software para crear modelos del sistema que haya que construir. Los modelos contienen una representación de los datos, de

la función y del comportamiento (en el nivel de análisis), así como caracterizaciones del diseño dedatos, arquitectura, procedimientos e interfaz. Al efectuar una comprobación de la consistencia yvalidez del modelo, las herramientas de análisis y diseño proporciona una al ingeniero del software Uncierto grado de visión en lo tocante a la representación del análisis, y ayudan a eliminar errores antesde que se propaguen al diseño, o lo que es peor, a la propia implementación.

  Herramientas PRO/SIM. Las herramientas PRO/SIM (de prototipos y simulación) [NIC9O] proporcionan al ingeniero del software la capacidad de predecir el comportamiento de Un sistema entiempo real antes de llegar a construirlo. Además, capacitan al ingeniero del software para desarrollar simulaciones del sistema de tiempo real que permitirán al cliente obtener ideas acerca de sufuncionamiento, comportamiento, y respuesta antes de la verdadera implementaron.

 Herramientas de desarrollo y diseño de interfaz. Estas herramientas son en realidad un conjunto de primitivas de componente de programas tales como menús, botones, estructuras de ventanas, iconos,mecanismos de desplazamiento, controladores de dispositivos etc. Sin embargo, estos conjuntos deherramientas se están viendo sustituidos por herramientas de generación de prototipos de interfaz que  permiten una rápida creación en pantalla de sofisticadas interfaces de usuario, que se ajustan alestándar de interfaz que se haya adoptado para el software.

  Herramientas de generación de prototipos. Se puede utilizar toda una gama de este tipo deherramientas, los  generadores de pantallas permiten al ingeniero del software definir rápidamente ladisposición de la pantalla para aplicaciones interactivas. Otras herramientas de prototipos CASE mássofisticadas permiten la creación de Un diseño de datos, acoplado con las disposiciones de la pantalla yde los informes simultáneamente. Muchas herramientas de análisis y diseño proporcionan extensiones

que ofrecen alguna opción de generación de prototipos. Las herramientas PRO/SIM generan Unesqueleto de código fuente en Ada y C para las aplicaciones de ingeniería (en tiempo real). Por ultimo,una gama de herramientas de cuarta generación poseen también características de generación de prototipos.

 Herramientas de programación. La categoría de estas herramientas abarca los compiladores, editores,y depuradores que están disponibles para prestar su apoyo en la mayoría de los lenguajes de programación convencionales. Además, los entornos de programación orientados a objetos (00), loslenguajes de cuarta generación, los entornos de programación gráfica, los generadores de aplicaciones,y los lenguajes de consulta de bases de datos residen también en esta categoría.

Page 10: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 10/30

 

Herramientas CASE

 Herramientas de integración y comprobación. En su directorio de herramientas de comprobación desoftware, Software Quality Engineering define las siguientes categorías de herramientas decomprobación:

•   Adquisición de datos: herramientas que adquieren datos que son utilizaran durante lacomprobación.

•  Medida estática: herramientas que analizan el código fuente sin ejecutar casos de prueba.•  Medida dinámica: herramientas que analizan el código fuente durante la ejecución.•  Simulación: herramientas que simulan las funciones del hardware o de otros elementos externos.•  Administración de comprobaciones: herramientas que prestan su asistencia en la planificación,

desarrollo y control de las comprobaciones.•  Herramientas de funcionalidad cruzada:  se trata de herramientas que cruzan los limites de las

categorías anteriores.

Debería tenerse en cuenta que muchas de las herramientas de comprobación poseen características queabarcan dos o más de las categorías anteriores.

 Herramientas de análisis estático. Estas herramientas prestan su asistencia al ingeniero del software a

efectos de derivar casos prácticos. Se utilizan tres tipos distintos de herramientas estáticas decomprobación en la industria: Herramientas de comprobación basadas en código, lenguajes decomprobación especializados, y herramientas de comprobación basadas en requisitos. Lasherramientas de comprobación basadas en código admiten Un código fuente (o PDL) como entrada, yefectúan Un cierto numero de análisis que dan lugar a la generación de casos de prueba. Los lenguajesde comprobación especializados (p. ej.: ATLAS) capacitan al ingeniero del software para escribir detalladas especificaciones de comprobación que describirán todos los casos de prueba y la logística desu ejecución. Las herramientas de comprobación basadas en requisitos aislan los requisitos especificosdel usuario y sugieren casos de prueba (0 clases de comprobaciones) que ejerciten estos requisitos.

 Herramientas de análisis dinámico. Son herramientas que interactuan con un programa que se estéejecutando comprobando la cobertura de rutas, las afirmaciones acerca del valor de variables

especificas y en general instrumentan el flujo de ejecución del programa. Las herramientas dinámicas pueden ser intrusivas o no intrusivas. Las herramientas intrusivas modifican el software que hay quecomprobar mediante sondas que se insertan (instrucciones adicionales) y que efectúan las actividadesmencionadas anteriormente. Las herramientas no intrusivas utilizan un procesador hardware por separado que funciona en paralelo con el procesador que contenga el programa que se estácomprobando.

 Herramientas de gestión de comprobación. Son herramientas que se utilizan para comprobar ycoordinar la comprobación de software para cada uno de los pasos principales de comprobación. Lasherramientas de esta categoría administran y coordinan la comprobación de regresiones, efectúancomparaciones que determinan las diferencias entre la salida real y la esperada, y efectúancomprobaciones por lotes de programas con interfaces interactivas entre hombre y maquina. Además

de las funciones indicadas anteriormente, muchas herramientas de gestión de comprobaciones sirventambién como controladores de comprobación genéricos. Un controlador de comprobación lee uno omás casos de prueba de algún archivo de pruebas, da formato a los datos de prueba para que se ajustena las necesidades del software que se está probando, e invoca entonces al software que sea precisocomprobar.

  Herramientas de comprobación cliente/servidor. El entorno C/S exige unas herramientas decomprobación especializadas que ejerciten la interfaz gráfica de usuario y los requisitos decomunicaciones en red para él cliente y él servidor.

Page 11: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 11/30

 

Herramientas CASE

 Herramientas de reingeniería. La categoría de herramientas de reingeniería se puede subdividir en lasfunciones siguientes:

•  Herramientas de ingeniería inversa para producir especificaciones:  se toma el códigofuente como entrada y se generan modelos gráficos de análisis y diseño estructurados, listasde utilización y otras informaciones de diseño.

•   Herramientas de estructuración y validación de código: se analiza la sintaxis del programa, se genera una gráfica de control de flujo y se genera automáticamente un

 programa estructurado; y• Herramientas de reingeniería para sistemas en línea: se utilizan para modificar sistemas

de bases de datos en linea (p. ej.: para convertir archivos IDMS 0 DB2 traduciéndolos a unformato de entidades y relaciones).

Muchas de las herramientas anteriores están limitadas a lenguajes de programación específicos (auncuando se abarcan la mayoría de los lenguajes principales) y requieren un cierto grado de interaccióncon el ingeniero del software.

Las herramientas de ingeniería inversa y progresiva de la próxima generación hará un uso muchomayor de técnicas de inteligencia artificial, aplicando una base de conocimientos que sea especifica deldominio de la aplicación (esto es, un conjunto de reglas de descomposición que se aplicarían a todos

los programas de una cierta zona de aplicación tal como sí control de fabricación o la aviónica). Elcomponente de inteligencia artificial asistirá en la descomposición y reconstrucción del sistema, peroseguirá requiriendo una interacción con un ingeniero de software a lo largo del ciclo de la reingeniería.

2.4 Heramientas CASE Cliente/Servidor (C/S)

A la relación entre las herramientas CASE y la arquitectura C/S podemos determinarla al plantearnoslas siguientes cuestiones, ¿ cuáles son las influencias de las herramientas CASE en las empresasdesarrolladoras de sistemas de información cliente/servidor ? y, ¿ cuáles son las tendencias actuales delas empresas fabricantes de sistemas cliente/servidor ?. Como soporte, se planteará un marco teóricoque explicará la filosofía cliente/servidor, y posteriormente se procederá a responder a las preguntas

mencionadas anteriormente.

Arquitectura Cliente/Servidor (C/S)

Con la aparición de las redes de ordenadores en empresas y universidades ha surgido en el mundo de lainformática la tecnología cliente/servidor. Hay una gran cantidad de organizaciones que ya cuentan conun número considerable de aplicaciones cliente/servidor en operación: Servidores de Bases de Datosy Manejadores de Objetos Distribuidos. Cliente/servidor es una tecnología de bajo costo que proporciona recursos compartidos, escalabilidad, integridad, encapsulamiento de servicios, etc. Pero aligual que toda tecnología, el desarrollo de aplicaciones cliente/servidor requiere que la persona tengaconocimientos, experiencia y habilidades en procesamiento de transacciones, diseño de base de datos,redes de ordenadores y diseño gráfica de interfase.

Clientes y servidores son entidades lógicas separadas que trabajan junto en una red, para cumplir unatarea. Todo sistema cliente / servidor tiene las siguientes características:

• Servicio: Cliente/Servidor es principalmente una relación entre ejecución de procesos demáquinas separadas. El servidor de procesos es un proveedor de servicios. El cliente es unconsumidor de servicios. En esencia, cliente/servidor provee una separación limpia defunciones basadas en la idea de servicios.

• Recursos Compartidos: Un servidor puede ofrecer servicios a muchos clientes al mismotiempo y regular su acceso a recursos compartidos.

Page 12: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 12/30

 

Herramientas CASE

• Protocolos Asimétricos: Hay una relación de muchos a uno entre clientes y servidores. Losclientes siempre inician el diálogo para solicitar un servicio. Los servidores están esperando pasivamente por solicitudes de clientes.

• Localidad Transparente: El servidor es un proceso que puede permanecer en la mismamáquina como el cliente o en una máquina diferente de la red.

• Intercambio de Mensajes: Los clientes y servidores se acoplan a sistemas que actúanrecíprocamente por un mecanismo de pase de mensaje (message passing).

• Encapsulación de Servicios: El servidor es un especialista. Un mensaje le dice a un servidor qué servicio es solicitado; éste entonces le indica al servidor como realizar el trabajo. Losservidores pueden ser actualizados sin afectar la interfase de pase de mensajes con los clientes.

• Escalabilidad: Los sistemas cliente/servidor pueden ser escalados horizontalmente overticalmente. La escalabilidad horizontal significa agregar o quitar estaciones de trabajocliente con sólo un impacto en la ejecución. Una escalabilidad vertical significa emigrar a unamáquina servidora más grande y más rápida o múltiples servidores.

• Integridad: El código y el dato del servidor es centralmente mantenido, el cual resulta unmantenimiento más barato y guardando la integridad de los datos compartidos.

Evolución de la tecnología C/S

La primera ola de cliente/ servidor fue causada por los NOSs (Network Operating System). Los NOSsfacilitan a las aplicaciones compartir archivos, impresoras y otros dispositivos conectados a la red;desempeñan su magia extendiendo el alcance del sistema operativo. Podríamos llamar a la primera olade cliente/servidor la "ola Netware". Estamos en la segunda ola del cliente/servidor: La ola de lasaplicaciones centradas en bases de datos. La tecnología predominante es el "servidor de bases de datosSQL". Sin embargo, también experimentamos otras dos grandes oleadas tecnológicas causadas por elGroupWare y los TP monitors. La tercera oleada de cliente/servidor son los objetos distribuidos. Losobjetos rodean la tecnología de la primera y segunda ola y añaden un nuevo valor considerable. Tienenel único potencial de distribuir inteligencia entre clientes y servidores donde más se requiere. Acontinuación se muestra el gráfico de la evolución de la tecnología Cliente/Servidor a lo largo de losaños.

Ahora podemos describir el panorama general del uso de herramientas CASE en aplicacionesCliente/Servidor enfocado desde dos puntos de vista distintos:

• Estructura de costos de las empresas desarrolladoras.

• Rango de aplicabilidad de las herramientas CASE.

2.4.1CASE al nivel de Estructura de Costos.

Las empresas desarrolladoras, al decidir adoptar una herramienta CASE, asimilan una serie de costos

tangibles e intangibles que afectan el proceso de desarrollo de las futuras aplicaciones Cliente/Servidor.Dichos costos podemos diferenciarlos en 3 tipos, a saber:

Page 13: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 13/30

 

Herramientas CASE

• Precio de Venta. Las herramientas CASE, por su complejidad de desarrollo y su alto nivel deespecialización, son muy costosas. En la tabla que aparece en la bibliografía anexa1, vemos que los precios oscilan entre los 1000$ y los 25,000$, y existen herramientas aún más costosas (de más deun millón de dólares). Sin embargo, las herramientas más caras resultan más baratas para laempresa desarrolladora si ésta posee una gran cantidad de recursos humanos destinados a proyectos. La razón es que la licencia de las herramientas costosas es única, en cambio, la de lasotras herramientas es por máquina instalada. Esta variación en el precio incide, lógicamente, en la

toma de decisión de la Alta Gerencia en relación a cuál herramienta debe elegir para un proyectodeterminado.

• Costo de Entrenamiento de Personal. La gran complejidad que poseen las herramientas CASEtambién se traduce en un aumento de los costos de desarrollo de sistemas, debido a los costosgenerados por la curva de aprendizaje del personal y los costos por entrenamiento. Esteincremento se aminora con el tiempo, a medida que los desarrolladores adquieran más destreza enel uso de la herramienta y sean, por tanto, más productivos. Esto se evidencia en la siguientegráfica:

Como puede apreciarse, el costo es considerablemente elevado y en muchas ocasiones esto ha  provocado que algunas empresas dejen de usar las herramientas CASE por considerarlasimproductivas.

Un factor que influye en la inclinación de la curva de aprendizaje es un bajo nivel de restricción de laherramienta CASE. Una herramienta que posea pocas restricciones, "puede sobrecargar a un analista alofrecer más opciones de las que es capaz de manejar. El resultado final puede ser que la herramientaCASE no sea usada apropiadamente"

• Costo de Adopción de la Metodología Asociada a la Herramienta CASE. Sabiendo que toda

herramienta CASE posee una metodología de trabajo asociada, y muy específica; es posible que segenere un costo de desarrollo adicional por adoptar una herramienta cuya metodología seadiferente a la imperante en la empresa. Ello puede generar, a su vez, brotes de hostilidad del personal hacia la herramienta. La implementación de las herramientas CASE integradas en unaorganización puede ser muy bien recibida por el personal deseoso para su utilización, bieneducado en un fondo teórico, y ser apaciblemente introducido en la mecánica de la herramienta através de un excelente entrenamiento y soporte durante el mismo. La misma herramienta en otrolugar puede ser recibida con hostilidad, con el personal sintiendo que ha sido obligado por laGerencia. Uno de los errores más comunes es el de elegir una herramienta CASE que soporte unmétodo que no sea familiar a los desarrolladores.

Costo del Ajuste

Desempeño Mejorado

Tiempo

CostodelAjus te

Page 14: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 14/30

 

Herramientas CASE

2.4.2 CASE al nivel de l Rango de Aplicación (CASE Cliente/Servidor).

Características deseables de una herramienta CASE C/S

Una herramienta CASE cliente/servidor provee modelo de datos, generación de código, registrodel ciclo de vida de los proyectos , múltiples repositorios de usuarios, comunicación entre distintosingenieros. Las principales herramientas son KnowledgeWare’s Application Development

Workbench, TI’s Information Engineering Facility (IEF), and Andersen Consulting’s Foundationfor Cooperative Processing.

Por otra parte, una herramienta CASE Cliente/Servidor debe ofrecer:

Proporcionar topologías de aplicación flexibles. La herramienta debe proporcionar facilidadesde construcción que permita separar la aplicación (en muchos puntos diferentes) entre el cliente, elservidor y más importante, entre servidores.

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 decorrida, 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 enlos 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 nivelesarbitrarios de granularidad ; por ejemplo, una única definición de datos o una agrupación demó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 ellamisma a los administradores de recurso que existen en varios servidores de la red; su interaccióncon los administradores de recurso debería ser negociable a tiempo de ejecución.

Trabajar con una variedad de software intermedios. La herramienta debe adaptar suscomunicaciones 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 oWAN. Soporte multiusuarios. La herramienta debe permitir que varios diseñadores trabajen en una

aplicación simultáneamente. 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 lasmodificaciones 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ónautomática de copias de seguridad y recuperaciones de las mismas, así como el almacenamiento degrupos 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 unmecanismo 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.

Page 15: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 15/30

 

Herramientas CASE

2.4.3Clasificación de las herramientas CASE Cliente/Servidor.

Las herramientas CASE Cliente/Servidor se pueden clasificar en dos grupos: las más modestas y  baratas (como Visual Basic, Power Builder, Delphi, Erwin, etc.), y las llamadas herramientasintegradas (IEF, Oracle CASE, etc.). Su costo está en proporción directa con su rango deaplicabilidad para desarrollar sistemas de información. Se ha demostrado que las herramientas del primer grupo no sirven para desarrollar sistemas de complejidad muy grande (sistemas distribuidos,

multiplataformas, o cualquier otro que consuma gran cantidad de recursos durante su desarrollo). Estoinfluye claramente en las políticas de desarrollo de una empresa que posea alguna herramienta, deforma tal que se han desarrollado metodologías para elegir la herramienta CASE más acorde a lascaracterísticas del proyecto a llevar a cabo. Si bien la diversidad de herramientas CASE es bastantemarcada, las empresas fabricantes están mostrando varias tendencias fundamentales de integración, asaber:

• Las futuras versiones de las herramientas CASE integradas serán más abiertas, es decir,admitirán en su metodología el uso de herramientas más pequeñas. Además, cada vez sevislumbran acuerdos para utilizar estándares conocidos (como OLE). Cada vez se hacen públicos más y más acuerdos de integración de tecnologías de diferentes fabricantes.

• Las herramientas CASE cada vez más facilitan la centralización de los archivos fuente y de

documentación de los proyectos en entes llamados repositorios, donde puedan almacenarseeficientemente durante una o más fases del ciclo de desarrollo de un sistema.

Herramientas CASE en el mercado actual

A continuación se presenta en forma breve, una reseña de cada una de las herramientas que hasta ahorahan salido al mercado del SW. Debido a que se tienen herramientas de desarrollo abiertas conconectividad a diversas plataformas, basadas en tecnología orientada a objetos y a tecnologíacliente/servidor que permiten la reutilización del software; nos permitimos dividir secciones entreestas, como a continuación se describe.

2.4.4 PowerBuilder de PowerSoft

Con 30 manejadores de base de datos, ofrece dos opciones de conectividad: ODBC de Microsoft y

conectividad nativa. Una de las características principales (muy apreciada por los usuarios, quienesdicen es mejor con Oracle e Informix que sus propias herramientas) de este producto es que comparteel mismo idioma de cada manejador. Incluye entre otros módulos el Optima++, herramienta RAD basada en componentes que combina desarrollos cliente/servidor e Internet con el rendimiento de C++.Asimismo, ofrece un módulo opcional CASE Power Design que genera modelos lógicos y físicos delos distintos manejadores que soporta para acelerar los desarrollos. También cuenta con la herramientaInfo Maker que ellos definen "como la estrellita" que permite de manera muy sencilla que los usuariosfinales puedan hacer data minning o minería de datos.

Power Builder cuenta con conectividad para aplicaciones Java a través del driver JDBC, desarrollado por Sybase y puede construir aplicaciones sobre cualquier plataforma. Precisamente, Java es uno de loslenguajes de programación que más está dando que hablar hoy día por considerarse un nuevo paradigma en el mundo de la computación, con él Sun Microsystems avanzó unos cuantos pasosdelante de su principal competidor Microsoft en el área de redes de computadoras. "Es orientado aobjetos y tiene la ventaja de que rompe la aplicación en bytecodes diseñados para trabajar y viajar a lolargo de una red desde el servidor hasta el cliente y puede correr encima de un browser o de un sistemaoperativo a través del Java Virtual Machine que permite correr la aplicación sobre cualquier tipo decliente".

Page 16: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 16/30

 

Herramientas CASE

Se considera que una de las fortalezas de Java son sus Interfaces de Programación de Aplicaciones(APIs), que las hay específicas y por áreas de industria y disponibles en la red. "Hoy día existen unas23 APIs, cada una con una funcionalidad particular que facilita enormemente el desarrollo". Otra de lasventajas de Java para el desarrollador, es el concepto de "escribir una vez y correr en cualquier parte"eso quiere decir que el programador escribe una sola vez el código, lo compila una sola vez y ese  programa puede correr en cualquier plataforma. Si bien esta es la bandera de Sun aún está enentredicho que la misma siga ondeando dado que Java está a media asta en Microsoft. Las

características novedosas de Java, especialmente su total orientación a objetos ha llevado a muchasempresas a establecer acuerdos con Sun: NetScape, IBM, Oracle, e incluso Microsoft, empresa que para bien o para mal se torna cada vez más agresiva hacia el mercado tuvo que ceder ante sus encantosy ya tiene su Visual J++.

Visual Basic

Actualmente Microsoft continúa impulsando este lenguaje, el cual es una evolución de su antecesor Basic y como su nombre lo indica, es un ambiente de desarrollo más visual. A partir de la versión 5.0cuenta con un compilador original de códigos y está más orientado a ambientes cliente/servidor eincluye soporte e integración a aplicaciones Internet/intranet a través de la tecnología ActiveX. La popularidad de Visual Basic se debe a su simplicidad ya que en cuanto a conectividad hay otros que lo

superan, pero podemos mencionar que soporta FoxPro, Oracle, e Informix vía ODBC y aún cuando noestá orientada a objetos porque no soporta polimorfismos, cumple algunas de las reglas de estatecnología al permitir reutilizar componentes para el desarrollo de aplicaciones personalizadas.

Visual FoxPro y Visual C++

Las herramientas de desarrollo orientadas a objetos con que Microsoft cuenta son Visual FoxPro yVisual C++, siendo ahora lo más reciente InterDev. De tales herramientas, esta última es la primeraque ayuda a los desarrolladores de aplicaciones basadas en Web en la construcción de sitiossofisticados totalmente interactivos. InterDev disminuye el ciclo de desarrollo al soportar los lenguajesde Internet Java y Visual Basic Scrip interconectándose con otros lenguajes como C++ o Visual Basica través de componentes ActiveX, además, puede interactuar totalmente con FrontPage 97(herramienta orientada a usuarios finales y diseñadores). De esta manera ambos pueden trabajar enequipo para la construcción de sitios Web.

Oracle

Siguiendo la orientación al Web, Oracle en la actualidad está enfocada directamente a su Arquitecturade Computación de Redes (NCA), considerada como un servidor universal de datos, aprovechando lomejor de los tres mundos: Web, cliente/servidor y orientación a objetos. Sus herramientas de desarrolloson básicamente tres:

Developer/2000, herramienta tipo RAD, presenta ventajas como sencillez, orientada a

cliente/servidor y desarrollar ambientes Web. Genera software basado enVisual Basic y Java para que pueda correr en cualquier  browser .Developer/2000 funciona sólo en Oracle, pero soporta básicamente las basesde datos SQL Server de Microsoft e Informix.

Oracle J-Dveloper, un generador de software de objetos en Java que pueden correr encualquier browser y permite reutilizarlos.

Page 17: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 17/30

 

Herramientas CASE

Designer/2000, herramienta de modelaje de alto nivel para procesos, entidad-relación, work flow y modelajes funcionales. La principal diferencia de esta herramienta esque manteniendo un modelaje de alto nivel puede generar la aplicación finaly luego realiza reingeniería de reverso para actualizar el repositorio central.

Erwin

Erwin es otra de las herramientas de la tecnología CASE, cuyo mayor diferenciador es su simplicidad(por generar código para la mayoría de los manejadores de base de datos ya que es completamenteabierta) y la rapidez para el desarrollo de bases de datos complejas (acelerar los tiempos de desarrollo).Esta herramienta ofrece una metodología para realizar diagramas entidad-relación y cuenta con unainterfaz gráfica altamente intuitiva. La versión 3.0 que incluye un servidor de ingeniería de reverso,función que lleva a cabo desde los datos existentes a modelos lógicos de datos. Asimismo trae uneditor de disparadores (triggers) y de stored procedures.

Cool Stuf, de Sterling Software

Esta herramienta cuenta con un módulo para generar ingeniería de software tradicional, así mismo, unalínea de productos para desarrollo de aplicaciones cliente/servidor de múltiples capas y para ambientesdistribuidos. Además puede generar aplicaciones para Internet/intranets, soporta métodos orientados aobjeto UML y cuenta con interfaces MQSeries de IBM o DCE. Cool Stuf cubre todo el ciclo de vidadel producto desde la reingeniería de los procesos del negocio, análisis, diseño, distribución de procesos de datos y generación automática de código que puede ser en C++, Java o Cobol. Para ello seapoya en la metodología de James Martin, así como también en metodologías basadas en Orientación aObjetos. Una desventaja de esta es que utilizar una herramienta CASE del tipo Cool Stuf toma mástiempo el desarrollo de software en las primeras fases de análisis y diseño, se asegura la calidad de laaplicación, el entendimiento y la documentación, así como también minimiza el mantenimiento.

2.4.5 Informix

Otra de las empresas que también cuenta con su herramienta de desarrollo NewEra orientada a la plataforma cliente/servidor y es totalmente orientada a objetos. Además posee dos formas de generar aplicaciones: en forma compilada y en interpretada. Ésta última disminuye considerablemente lostiempos de desarrollo. NewEra cuenta con una característica de particionamiento que permite aldesarrollador decidir qué parte de la aplicación se va a ejecutar en la PC y qué parte en el servidor yesto se hace desde el mismo lenguaje y no a través de  stored procedures. Su conectividad con otras plataformas se realiza por medio de drivers ODBC, específicamente para Informix, Oracle, Sybase.

2.5 Herramientas CASE tradicionales

2.5.1 Opal, de Computer AssociatesHerramienta de desarrollo que sirve para preservar toda la inversión existente en las aplicaciones quetiene una empresa en funcionamiento y le agrega nuevo valor al integrar diferentes fuentes deinformación no sólo de ambiente mainframe sino cliente/servidor, AS/400 y todo de manera interactivay más amigable. Presenta un ambiente de desarrollo gráfico que tiene capacidad de comunicación concualquier terminal 3270, VT100 y 5250 e integra cualquier base de datos relacional que tenga undriver ODBC.

Page 18: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 18/30

 

Herramientas CASE

Sin embargo, y aunque pareciese no es un maquillador de pantalla, ya que además de contar con unainterfaz tipo Windows permite al usuario crear sus propios temas y multimedios. Uno de las ventajas  principales de Opal es CODE, el cual permite desarrollar una aplicación una sola vezindependientemente del ambiente bajo el cual vaya a ser ejecutada y esa aplicación va a servir para unambiente cliente/servidor, así como también para verlo a través de Internet e intranet. Cabe destacar que múltiples y diferentes fuentes de datos en la misma aplicación Opal pueden ser conectadas con unasesión 3270, VT100 y por otro lado estar accesando a una base de datos Oracle cliente/servidor y toda

esta información converge en un sólo punto que va a ser la aplicación Opal y luego se despliega deacuerdo a lo que se requiere.

Opal está compuesto por tres elementos:  Integrator , ambiente de desarrollo orientado a objetos; Opal  Player  runtime, que permite ejecutar la aplicación para diversas plataformas y para Internet (browser   Netscape y Explorer). El tercer y último componente es el Opal Server, para optimizar lascomunicaciones entre la aplicación Opal que está corriendo en el cliente y los requerimientos deinformación hacia las fuentes de datos.

2.5.2 Trabajando en equipo

Dentro de los llamados ambientes heterogéneos se continúa imponiendo el trabajo en grupos, de loscuales se tienen actualmente los siguientes:

Lotus con Notes

Herramienta que impulsa esta tendencia desde hace ya siete años. Funciona como cliente y uno de susfactores diferenciadores es que trae una serie de funcionalidades para grupos tales como manejo dedocumentos, work flow, foros, electrónicos, tratamiento de imágenes y calendario, de modo que eldesarrollador no tiene que comenzar de cero como sucede con otras herramientas (Visual Basic que seinicia en un editor). Incluye un almacén de objetos dentro de la documentación que no son sólo anexos,sino un soporte completo a OLE 2.0. Otro punto importante, es el Lotus Components, los cuales sonminiprogramas rápidos y eficientes desarrollados con tecnología OLE y ActiveX de Microsoft que se

insertan dentro de documentos Notes, como hoja de cálculo, diagramas de flujo, graficación, diagramasorganizacionales y no se requiere comprar todo un paquete de herramientas de productividad, quecomo se sabe el 80% de los usuarios sólo utilizan un 20% de lo que el producto trae.

Otra característica de Notes es que ofrece la facilidad de trabajo en grupo con aplicaciones interactivasy permite integrar ambientes tradicionales de las empresas al permitir la conexión con bases de datosinternas y con aplicaciones de terminales mainframes o AS/400, las cuales pueden ser vistas desde Notes o desde un browser  e incluso permite grabar datos dentro de ellas. Desarrollar en Notes es bastante rápido, por ejemplo un producto de flujo de trabajo se puede hacer en dos meses, mientras enVisual Basic tarda unos 9 meses. Pero aquí habría que añadir cuánto cuesta un desarrollador de Notesversus uno de Visual Basic. Una característica última es que trabaja en múltiples plataformas, correWindows 3.11, NT, Macintosh y en diversos sabores de Unix y el producto de los desarrollos en cada

una de esas plataformas puede correr en otras sin modificaciones (importante para soportar la tendenciade los ambientes heterogéneos).

Notes Global Designer 

Esta es de las herramientas que está cobrando mucha fuerza al permitir que el desarrollador, utilizandoun glosario de términos pueda crear una aplicación y la misma puede verse en varios idiomas deacuerdo a los requerimientos del usuario.

Page 19: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 19/30

 

Herramientas CASE

2.6 Evaluación de Herramientas CASE´s

Sabemos que las herramientas CASE son de gran utilidad en el proceso de planeación y que además, lainformación estará disponible para ser manipulada durante las etapas de desarrollo y mantenimientodel ciclo de vida del sistema. Se considera pues, como la mejor manera de diseñar diagramas y comouna forma de almacenar el trabajo de desarrollo de un sistema en un repositorio, el cual actúa como un

 puente para ligar varias herramientas, mientras la información en este puede ser usada para analizar latotalidad de un diseño, es decir, como algo que permite desarrollar sistemas en nuevas formas usandoelementos existentes.Considerando que con el uso de CASE se tiende a tener pocos errores de análisis y diseño, además deque las pruebas al sistema toman mucho menos tiempo, es recomendable hacer uso de estaseleccionando una metodología de desarrollo. Se tiene la ventaja de que aún cuando debido a laevolución constante de estos productos sea difícil escoger la herramienta óptima, no lo es lametodología. Tal selección debe darse con la plena seguridad de que es lo que realmente se requiere.

Ahora bien, de las herramientas CASE antes mencionadas seleccionamos tan solo a cuatro: Erwin 3.0, Erstudio 2.5, System Architech 4.0 y Power Designer 6.1, que a nuestra consideración, son las másóptimas para modelado de funciones de proyectos, flujos de información, entidades de datos y otra

información. Por lo que, a continuación se da una breve descripción de cada una de estas herramientasde acuerdo a las características que presentan en los distintos componentes que ofrece una herramientaCASE (diagramación, generación de código, esquema de Base de Datos, entre otros).

2.6.1 Características Generales

ERWIN 3.0

Erwin es una herramienta para modelar, que ayuda a diseñar bases de datos de alto desempeño paracliente/servidor y web/intranet, así como aplicaciones de data warehousing. La herramienta Erwin nosolo ayuda a diseñar modelos de datos lógicos, también construye automáticamente estructuras de

datos físicos con la información del diagrama. Cuando el modelo de datos esta listo para usarse,simplemente se selecciona el servidor donde se quiere construir la base de datos y se eligen lasopciones de generación de esquema que se quieran incorporar. En minutos, Erwin automáticamenteconstruye la base de datos física, incluyendo todas las tablas, índices, procedimientos almacenados,triggers de integridad referencial y otros componentes necesarios para manejar exitosamente los datosusados en la organización.

ER/STUDIO 2.5

Es una herramienta de modelado de datos fácil de usar y multinivel, para el diseño y construcción de bases de datos a nivel físico y lógico. Direcciona las necesidades diarias de los administradores de bases de datos, desarrolladores y arquitectos de datos que construyen y mantienen aplicaciones de

 bases de datos grandes y complejas. ER/Studio está equipado para crear y manejar diseños de bases dedatos funcionales y confiables. Ofrece fuertes capacidades de diseño lógico, sincronización  bidireccional de los diseños físicos y lógicos, construcción automática de bases de datos,documentación y fácil creación de reportes.

Page 20: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 20/30

 

Herramientas CASE

SYSTEM ARCHITECT 4.0

System Architect es una herramienta poderosa de modelado estructurado de datos, tiene la capacidadde identificar y clasificar personal para autorizar su entrada al sistema.Los usuarios de red trabajan en un diagrama de proyecto y una llave de registro de diccionario dedatos. Soporta la mayoría de los paquetes de red incluyendo Novell, 3Com, Banyan, DecNet, LANManager, STARLAN y otras. Define propiedades para cualquier entrada de diccionario, incluyendo

definiciones, símbolos y diagramas. Construye ligas entre varios objetos del diccionario. Especifica ydefine requerimientos, planes de prueba, cambio de requerimientos, objetivos de negocios, metas, as{icomo símbolos o grupo de símbolos que son afectados.

POWERDESIGNER 6.1

Es una herramienta para crear bases de datos y aplicaciones cliente/servidor basadas o no en We b.Permite a los diseñadores de aplicaciones complejas de cliente/servidor tener una descripción generalde los procesos particulares para comprender mejor a la organización. Exporta información del modelofísico y extiende atributos al diccionario de 4GL. Importa atributos extendidos de PowerBuilder.Soporta definición de atributos extendidos para PowerBuilder, Progress, Uniface, PowerHouse, Axiant,y NS-DK.

2.6.2 Diagramas

ERWIN 3.0

Los diagramas de modelos de datos en Erwin se usan para generar o actualizar bases de datosrelacionales, o sea, sistemas de almacenamiento de datos ordenados en tablas. Cuando se crea undiagrama Erwin, el modelo de la información se representa por entidades (gente, lugares y cosas),atributos (hechos acerca de una entidad, tales como nombre de la persona, dirección, edad, etc.), yrelaciones entre entidades. Cada entidad corresponde a una tabla en la base de datos, con instancias de

entidades que corresponden a los renglones de la tabla y atributos de entidades correspondientes aencabezados de columnas. Las relaciones, usadas por DBMS (data base management system) paraligar renglones de datos en tablas diferentes, están representadas como frases verbales en una líneaconectando a dos entidades. Cuando se actualiza una base de datos física, Erwin automáticamentegenera un  script de definición de datos SQL, para crear tablas de bases de datos, incluyendo llaves,constraints y códigos trigger SQL para reforzar la integridad referencial entre tablas relacionadas.

ERSTUDIO 2.5

La creación de diagramas es clara y rápida. Tiene la posibilidad de realizar diagramas con desempeñorápido. También es posible cambiar el estilo de las líneas, los colores, tipos de letra, niveles deacercamiento, y modelos de despliegue. Es posible crear subvistas para separar y manejar áreas

importantes. ER/Studio automáticamente mantiene todas las dependencias entre subvistas y eldiagrama completo. El Explorer Navigatior facilita el trabajo hasta con los diagramas más grandes. Seusa el browser Explorer para encontrar y seleccionar entidades. Un solo click inmediatamente enfocauna ventana de diagrama.

SYSTEM ARCHITECT 4.0

El área de dibujo de diagramas puede ser del tamaño de 64" x 60" a 50" x 150". Es posible ver losdiagramas en las siguientes opciones: tamaño actual, página completa, área usada, o porcentaje dereducción.

Page 21: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 21/30

 

Herramientas CASE

Permite la edición de un diagrama en cualquier modo de vista, seleccionar y mover objetosindividualmente o usando el ratón para obtener la porción del diagrama que se desee, y cambiar eltamaño objetos individuales proporcionalmente o no proporcionalmente usando el ratón. Laherramienta  Leveling Automatically nivela diagramas y usa un mecanismo simple para cambiar laherencia en cualquier dirección. Automáticamente crea  Decomposition Diagrams (Diagramasdescompuestos) de la herencia del Data Flow Diagrams (Diagramas de flujo de datos).

POWERDESIGNER 6.1

PowerDesigner cuenta con herramientas para la creación y control de diagramas como son: Off-pageConnector; que representa los flujos de entradas y salidas en un proceso, Business Rules que define lasreglas de uso para Procesos, Almacenamiento de datos, Entidades externas, y Flujos de datos; y CRUDMatrix, que define el efecto de un proceso de datos en términos de Crear, Leer, Actualizar, y Borrar operaciones (CRUD).

Ayuda

ERWIN 3.0

La herramienta de Erwin, Workspace contiene una ventana de diagrama donde se crea el diagrama delmodelo de datos y provee varias herramientas de cliente usadas en el proceso de modelado. Algunasrecomendaciones para facilitar a cualquier primerizo su uso:

1. Hacer click en la barra de menú de Erwin para conocer información de cómo usar los menús yeditores de Erwin.2. Hacer click en la barra de herramientas para obtener rápidamente una idea de cuanto se puedehacer en Erwin sin siquiera abrir un menú.3. Hacer click en la barra de herramientas de color y tipo de letra para ver como se cambia eltexto y los colores usados en un diagrama rápidamente.4. Hacer click en la caja de herramientas para aprender más acerca de cada símbolo usado en undiagrama Erwin.5. Hacer click en el Subject Area List Box en el lado derecho de la barra de herramientas paraaprender como usar las áreas de sujeto Erwin para subdividir un modelo de datos grande.

ERSTUDIO 2.5Ya sea que se inicie un nuevo diseño o se mantenga uno existente, ER/Studio está equipado conelementos de ayuda para hacer el trabajo de manera efectiva. Las barras de herramientas tienen algunassugerencias para el uso de las mismas, además de contar con ayuda en línea sensible al contexto.

SYSTEM ARCHITECT 4.0La ayuda en línea de System Architect es extensiva, e incluye tutoriales del modelado de datos, BPR,análisis estructurado.

POWERDESIGNER 6.1La ayuda de Power Designer es sensible y adecuada al contexto.

Page 22: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 22/30

 

Herramientas CASE

Esquema de la base de datos

ERWIN 3.0

Para diseñar un modelo de datos, Erwin proporciona propiedades específicas de DBMS y del servidor de editores que permiten definir nombres físicos y propiedades para las tablas, columnas y relacionesque genera cuando se crea el esquema de la base de datos. Cuando Erwin crea un esquema de bases dedatos, genera un  script de cliente DDL (data definition languag e) usando la sintaxis correcta de SQL para el servidor seleccionado. Se puede ver el código que genera Erwin y, si se desea, se puedemodificar antes de que se cree la base de datos. Si el servidor soporta elementos avanzados como procedimientos almacenados y triggers de integridad referencial, Erwin proporciona editores de plantillas especiales y macros para guardar la información en tiempos determinados para acelerar lacreación de estos objetos en el servidor. En varios servidores, se pueden hasta crear objetos dealmacenamiento físico como espacios de tablas y segmentos de enrolamiento de Erwin así comoespecificar la ubicación y parámetros de almacenamiento para las tablas de bases de datos que Erwingenera en el servidor.

ERSTUDIO 2.5

Las capacidades de diseño que contiene, ayudan a crear un diseño lógico que puede transformarse encualquier número de diseños físicos. Como resultado, se puede mantener un diseño lógico normalizadomientras se desnormalizan los diseños físicos para su desempeño. ER/Studio mantiene ligas entre todoslos niveles de su diseño por lo tanto puede mezclar cambios en cualquier dirección entre ellos.ER/Studio revisa la normalización y la compilación con la sintaxis de la plataforma de la base de datos.Se pueden desplegar los modelos de datos usando la notación IDEF1X o IE. ER/Studio permite tomar   por omisión las opciones para todos los diagramas así como realizar cambios al momento de laejecución.

SYSTEM ARCHITECT 4.0

System Architect proporciona todos los elementos para diseñar un nuevo sistema o modificar unsistema actual. Es posible crear modelos lógicamente normalizados y modelos de datos físicamentedesnormalizados usando el conjunto de herramientas de System Architect. También se puede crear unmodelo conceptual de las entidades y especificar su relación con otras. Al avanzar el proyecto, se  pueden incluir llaves primarias, atributos, reglas, constraints de integridad referencial, triggers personalizados, y cualquier otra información que se elija para mantenerla en el modelo. Si se diseña unnuevo sistema usando un diccionario amplio de datos es posible especificar los requerimientos de losdatos antes de comenzar el modelado mientras se está construyendo el modelo, o después de haber completado el diseño lógico.

Si se está modificando un sistema existente es posible usar la ingeniería de reverso de SA para crear undiagrama de modelo de datos físicos para el sistema actual. SA crea automáticamente un DER de unmodelo de datos físico. Entonces se puede modificar el DER, creando un modelo lógico normalizadodel nuevo sistema. Una vez que se ha completado el diseño lógico, se pueden generar modelos físicos.Si se planea implementar una base de datos desnormalizada, se puede documentar el proceso dedesnormalización usando diagramas   Local View (Vista Local). SA mantiene ligas entre el modelológico, las vistas lógicas, y el modelo físico; por lo tanto los cambios al modelo lógico se reflejanautomáticamente en el modelo físico. Al final, se tienen dos modelos físicos separados: uno del sistemaactual y otro del sistema propuesto.

Page 23: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 23/30

 

Herramientas CASE

Para cualquier tipo de proyecto en el que se esté trabajando, SA proporciona flexibilidad paracompletar el trabajo. Se pueden elegir modos de despliegue en cualquier tiempo durante el proceso dediseño: conceptual, basado en llaves, totalmente atribuido, o despliegue físico. También, una vez quese ha completado el modelo lógico, se pueden ejecutar una serie de reglas revisadas y reportes denormalización para validar la integridad del diseño. SA prueba las Formas Normales: Primera,Segunda, Tercera, y Boyce Codd.

POWERDESIGNER 6.1

Data Architect proporciona capacidades de modelado de datos tradicional, incluyendo diseño de basesde datos, generación, mantenimiento, ingeniería de reversa y documentación para arquitecturas de bases de datos. Permite que los diseñadores de bases de datos creen estructuras de datos flexibles,eficientes y efectivas para usar una ingeniería de aplicación de bases de datos. También proporciona undiseño conceptual de modelo de datos, generación automática de modelo de datos, diseño denormalización física, sistema de manejo de bases de datos múltiples (DBMS) y soporte deherramientas de desarrollo, y elementos de reportes con presentación y calidad. El diseño se realiza endos niveles:

•  Nivel conceptual: entidades, relaciones, dominios, tipos de datos conceptuales, identificadores,

y reglas de negocios. Basado en la notación de Ingeniería de Información de Martin.•  Nivel físico: tablas, columnas, dominios, llaves primarias, llaves foráneas, llaves alternadas,

índices, constranits de integridad referencial declarativa, vistas, parámetros de almacenamientofísico, reglas de negocios, triggers y procedimientos almacenados.

Código que genera el lenguaje

ERWIN 3.0

Erwin combina bases de datos back-end  y desarrollo de aplicaciones  front-end  en un ambienteunificado. Tiene soporte para multi-clientes, Erwin genera formas de entrada de datos en Visual Basic,DataWindows de Power Builder y PROGESS SmartObjects del mismo modelo de datos, logrando quelos desarrolladores incorporen aplicaciones altamente productivas en tres de los ambientes dedesarrollo de bases de datos. Erwin extiende el editor estándar Column Property Editor de tal formaque se pueden asignar rápidamente propiedades de columna del lado del cliente, tales como tipo decontrol por omisión. Despliega formato y reglas de validación de cliente para cada columna y generaformas de entrada de datos en uso y otros componentes de aplicación directamente del mismo modeloErwin que crea la base de datos back-end.

Para simplificar aún más el desarrollo de aplicaciones en Visual Basic, Logic Works también ofreceDataBOT(tm), un robot de software avanzado que genera dinámicamente todo el código de acceso dedatos SQL requeridos, permitiendo hasta que los programadores novatos creen rápidamenteaplicaciones sofisticadas de bases de datos de alto desempeño en los ambientes actuales.

ERSTUDIO 2.5

Genera otros objetos de base de datos: vistas, procedimientos almacenados, defaults, reglas, y tipos dedatos de usuario, lo cual ayuda a la auto ordenación de tipos de objetos para eliminar errores dedependencia al construir la base de datos. Tiene una opción para generar código fuente o para construir  bases de datos. Soporte para crear bases de datos para Servidores SQL; y otra, para incluir código SQLy verificar la creación de objetos. Además de la opción para incluir encabezados de comentarios.

Page 24: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 24/30

 

Herramientas CASE

SYSTEM ARCHITECT 4.0

Genera archivos de definición de almacenamiento de trabajo (.WKS) y sección de pantalla (.SCS) paraimplementaciones de COBOL. SA/PowerBuilder Link permite el intercambio de la información dediseño entre SA y Power Builder, incluyendo DDL y atributos extensos.

POWERDESIGNER 6.1

Mediante el incremento del modelo de la base de datos, AppModeler genera instantáneamente objetos,componentes data-war e, y hasta aplicaciones básicas listas para ejecutarse inmediatamente enPowerBuilder, Power++, Visual Basic, Delphi, y Web-based objects. El AppModeler permite a losdesarrolladores: diseñar modelos de bases de datos físicas o crearlas instantáneamente a través de laingeniería de reversa de bases de datos existentes, generar, documentar y mantener bases de datos,generar rápidamente objetos de aplicación y componentes de datos para PowerBuilder 4.0 y 5.0; VisualBasic 3.0, 4.0, y 5.0;Delphi 2.0; Power++; y el Web.

• Generación de objetos PowerBuilder. Soporta todas las ediciones de PowerBuilder 4.0 y 5.0.Genera objetos personalizables de PowerBuilder y componentes basados en modelos de basesde datos físicos y plantillas que se encuentran dentro de las librerías de clases de su elección.

Genera objetos ventana y ventana de datos basadas en tablas, vistas y relaciones de llaves primarias-foráneas. Genera y hace ingeniería de reverso a los atributos. Incluye plantillas personalizables para la librería PowerBuilder Foundation Class (PFC).

• Generación de objetos en Visual Basic. Soporta todas las ediciones de Visual Basic 3.0, 4.0, y5.0. Incluye add-in de Visual Basic para la fácil manipulación de plantillas predeterminadas personalizables. Genera formas basadas en tablas, vistas, y relaciones de llaves primarias-secundarias. Genera proyectos basados en modelos de propiedades. Genera controles talescomo menús, listas, etc.

• Generación de objetos Delphi. Soporta todas las ediciones de Delphi 2.0. Incluye add-in deDelphi para una manipulación de plantillas personalizables predefinidas.Genera aplicaciones yobjetos (proyectos, formas, y controles) de tablas, columnas y referencias.

Ingeniería hacia delante y de reversa

ERWIN 3.0

Ingeniería hacia adelanteEl desarrollo del modelo de Logic Works usa información específica en un modelo de datos Erwin paraacelerar la creación y mantenimiento de soporte, migración y documentación de bases de datosrelacionales. El proceso de generar una base de datos físicos de un modelo de datos lógico se llamaingeniería hacia delante (forward-engineering). A la Generación de un modelo lógico a partir de

una base de datos física se llama ingeniería de reversa (reverse-engineering). Es posible llevar a cabola ingeniería hacia delante en Erwin (que se llama operación de diagrama) mediante la generaciónautomática de un esquema de base de datos física directamente del modelo de datos sin codificar laboriosamente las definiciones de datos necesarias en SQL y los trigger s.

Page 25: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 25/30

 

Herramientas CASE

Ingeniería de reversoLa capacidad de ingeniería de reversa de Erwin, la cual puede inferir exitosamente las relaciones entretablas, permite que se capture rápidamente la estructura de una base de datos existente y convertirla enun modelo lógico independiente del DBMS. Se puede usar el modelo de datos para análisis detallado,se define sobre tiempo y lo distribuye como parte de la documentación requerida a través del ciclo dedesarrollo. Si se desea migrar la base de datos existente de una plataforma a otra, Erwin puede hacer laingeniería de reverso de la base de datos existente, crear un modelo de datos, modificar o agregar 

nuevos elementos según sea necesario y después construir la base de datos física en cualquier ambientede servidor de los que soporta.

ERSTUDIO 2.5

Ingeniería hacia adelanteUna vez que se ha diseñado la base de datos, se pude construir o generar código fuente para todo o para parte de los diseños de la base de datos. Propiamente hace la secuencia de la creación de tipos deobjetos diferentes para asegurar eficiencia, y construir bases de datos libres de errores.

Actualiza una base de datos del diagrama. ER/Studio permite aplicar cambios de diseño del modelo dedatos directamente a la base de datos. Cuando se comparan las diferencias entre los dos, formula una

estrategia de alteración inteligente que implementa el diseño de las modificaciones mientras se preserva la tabla con los datos existentes, privilegios de objetos, y dependencias en la base de datos.

Ingeniería de reversoCuenta con ingeniería de reverso, cuando necesite iniciar un trabajo de una base de datos existente,ER/Studio puede hacer una ingeniería de reverso al esquema completo para cualquier plataforma de bases de datos. La operación de la ingeniería de reverso extrae eficientemente definiciones de objetos yconstruye un modelo de datos gráfico.

SYSTEM ARCHITECT 4.0

Ingeniería hacia delante

Común a los anteriores.

Ingeniería de reversoGenera y hace ingeniería de reverso en los trigger s, reglas, defaults, tipos de datos definidos,dispositivos y bases de datos. Elementos de la Ingeniería de reverso de SA:

• Captura datos del sistema de bases de datos más popular: Access, DB2, Informix, Oracle, SQLServer o SYBASE.• Ingeniería de reverso de un archivo DDL, a través del manejador ODBC, o a través de lainterface directa del SQL Server.• Genera diagramas de entidad relación que incluyen definiciones para llaves, no llaves yrelaciones.• Genera diagramas de modelo de datos físicos que incluyen definiciones para tablas, columnasy constantes.• Crea llaves primarias, índices alternados, y rutas de acceso de los índices en la estructura de la base de datos.• Importa trigger s, procedimientos almacenados, defaults, y roles de definiciones de bases dedatos existentes.• Captura, modifica, y regenera esquema usando SA RDE con el Schema Generator.• Captura, modifica, y regenera pantallas y menús de aplicaciones de Windows usando el SARDE con el SA Screen Painter 

Page 26: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 26/30

 

Herramientas CASE

POWERDESIGNER 6.1

Ingeniería hacia delanteComún a los anteriores.

Ingeniería de reversoVisualiza estructuras de bases de datos existentes directamente vía ODBC o usando archivos de script

DDL. Genera el modelo conceptual del modelo físico.

Retro-documentación de bases de datos existentes. Re-orientación de la base de datos existente a unDBMS diferente. Interfaz con herramientas de desarrollo: exporta información del modelo físico yextiende atributos al diccionario de 4GL, importa atributos extendidos de PowerBuilder, soportadefinición de atributos extendidos para PowerBuilder, Progress, Uniface, PowerHouse, Axiant, y NS-DK.

Sincronización de la Base de Datos

ERWIN 3.0

El manejo de cambio comprensivo de Erwin y los elementos de generación de script de alteraciónfacilita el almacenamiento del modelo de datos y la base de datos física de manera sincronizada.Durante la sincronización, Erwin desempeña una comparación comprensiva de todos los objetos físicosy lógicos, incluyendo definiciones de tablas y columnas, llaves, índices y parámetros dealmacenamiento físico, resaltando cualquier discrepancia y permitiendo que se migren las definicionesde la base de datos modelo al modelo de la base de datos.

Si se exportan cambios de un modelo a una base de datos, Erwin genera  scripts de alteración de SQL para actualizar el esquema de la base de datos. Erwin automáticamente revisa todas las dependenciasdel esquema y traduce y preserva los datos existentes cuando se actualiza el esquema, facilitando loscambios de diseño migrados para activar el desarrollo, probar y producir bases de datos. Además de lasincronización del modelo de toda la base, Erwin soporta sincronización de modelo a modelo y modeloa script.

ERSTUDIO 2.5

Sincronización entre el diagrama físico y el lógico. Mezcla entre cualquier par de diagramas físicos para la misma plataforma de bases de datos. Comparación lado-a-lado de las diferencias. El usuario puede decidir que diferencias mezclar o ignorar. Objetos reusables. Construir atributos reusables.Aplicarlos a atributos y columnas. Propagación global de actualizaciones. Construir tipos de datos personalizables. Submodelado. Crear cualquier número de subvistas personalizables sobre un diagramafísico o lógico. Cualquier objeto puede existir en cualquier numero de subvistas (relaciones de muchosa muchos entre objetos y subvistas). Crear rápidamente subvistas eligiendo un área del diagrama.Control independiente sobre el despliegue de la subvista, incluyendo posición del objeto, colores yletras. Utilidad de búsqueda rápida. Editores en tabla para evitar la necesidad de poner en modocascada los diálogos. Diferenciación de color de llaves primarias y secundarias inherentes. Sombreadode cajas de entidad.

Page 27: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 27/30

 

Herramientas CASE

SYSTEM ARCHITECT 4.0

El Generador de esquemas (Schema Generator) automatiza la creación y mantenimiento de esquemas para DBMS de SQL y 4GL SA Schema Generator traduce modelos de datos (ER o diagramas físicosDM), IDEF1X y diagramas de clases orientadas a objetos en las definiciones de los esquemas paramanejo de sistemas con múltiples bases de datos. La transferencia de esquemas en la DBMS se puedellevar a cabo en vivo, vía conexión ODBC, o a través del uso de un archivo. DDL intermedio. SA

Schema Generator simplifica el desarrollo y asegura la integridad de los diseños permitiendo crear ymantener esquemas de bases de datos para una amplia variedad de administradores desistemas de basesde datos SQL y no SQL. Cuando se genera un DBMS múltiple, los tipos de datos definidos en elmodelo de datos se mapean automáticamente a los tipos correctos del DBMS seleccionado. Se usa elSA Schema Generator para generar:

• DDL para la creación de tablas y mantenimiento desde el repositorio de Sa.• Definir Create Table o Alter Table, llaves primarias, y llaves secundarias.• Crear definiciones para reglas, procedimientos almacenados, defaults, y mensajes.• Triggers de integridad referencial y constraints.• Usar tipos de datos definidos por el usuario.•

Definiciones de Disk Init, Disk Mirror, Add Segment, y Create Database.• Índices de rutas de acceso y llaves.• Definiciones de tipos para C y libros de COBOL.• El generador de esquema (Schema Generator) prueba las palabras reservadas de COBOL yautomáticamente modifica con extensiones –XX.

POWERDESIGNER 6.1

Soporta más de 30 DBMS, incluyendo Sybase SQL Server, Oracle, Informix, Ingress, Sybase SQLAnywhere, Microsoft SQL Server, SQLBase, Progress, Access, Paradox, FoxPro, etc. Creación directade bases de datos vía ODBC o usando archivos de scripts DDL. Elige la generación del modelo entero,ciertos submodelos, u objetos individuales. Reglas de negocios definidas de usuario pueden integrarse

en triggers y procedimientos almacenados. Para el mantenimiento de la base de datos, incluye:Modelos de archivo.Comandos alterados generados para preservar datos contenidos.Mantenimiento vía ODBC o a través de archivos de scripts DLL.Elegir para generar el modelo entero, ciertos submodelos, u objetos individuales.

Diseño

ERWIN 3.0

Complete-Compare es una tecnología de Logic Works que cambia la forma de modelar la interacción

de modelos o bases de datos. Provee de una comparación comprensiva de todas las diferencias.Resaltando cualquier discrepancia, los cambios pueden migrarse de un modelo-a- base de datos o deuna base de datos-a-un modelo. Erwin también integra la base de datos en el desarrollo del proceso dela aplicación. Cuando se ligan las herramientas de desarrollo, Erwin sincroniza el back-end de la basede datos con las formas del front-end.

ERSTUDIO 2.5

ER/Studio ayuda a prolongar la inversión que se ha hecho. Soporta el proceso de diseño iteractivoinherente en el ciclo de vida de la aplicación.

Page 28: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 28/30

 

Herramientas CASE

SYSTEM ARCHITECT 4.0

SA cuenta con la herramienta Screen Painter, con la que se pueden diseñar pantallas y menús paraaplicaciones de Windows, y pantallas de caracteres para aplicaciones de COBOL. Los archivos deWindows .DLG y .MNU se pueden generar automáticamente por SA, incluyendo posición, leyenda,hot key, orden de tablas, y número de identificación para cada control o elemento de menú incluido enla aplicación original de Windows. Por otra parte, pueden crearse pantallas usando controles estándar 

de Windows, incluyendo botones de presión, cajas de revisión, botones de opciones, cajas combo,cajas de listas, cajas de texto. Se pueden generar archivos de diálogos (.DLG), encabezado(.H), yforma de Visual Basic (.FRM) para aplicaciones de Windows. Usa una rutina simple de captura paracrear un nuevo menú de cualquier menú de aplicación de Windows. Dibujar menús usando loselementos del menú, submenú y separadores. Agregar accesos directos para elementos del menú ysubmenú. Los elementos del submenú y del menú se activan usando el cursor. Los diálogosseleccionados se abren de elementos seleccionados del menú.

POWERDESIGNER 6.1

MetaWorks es un sistema diseñado para proveer los modulos gráficos de PowerDesign con la habilidadde compartir y almacenar modelos de datos en un solo punto de control, el Diccionario MetaWorks

MetaWorks se ejecuta en una PC y almacena los modelos de datos en un servidor de bases de datos,que puede ser Sybase, SQL Anywhere o cualquier otro como Oracle, Informix, DB2, MS SQL Server y CA OpenIngres. MetaWorks provee de tres funciones principales:   Data Model y Submodel   Extraction/Consolidation, Project (or Dictionary) Management, y  Environment Administration. ElMetaBrowser presenta vista de árbol en una línea jerárquica de la aplicación bajo el estudio (base dedatos, proyecto, modelo, objeto, y submodelo), expande o colapsa vista de objetos, crea, modifica, borra o imprime objetos seleccionados, habilita comparación entre modelos del mismo tipo, en el nivelde objeto, trabaja con listas de objetos a través de cualquier proyecto, modelo o submodelo.

Web

ERWIN 3.0

Logic Works Net Results Suites integra el modelado de datos Erwin con las mejores herramientas dedesarrollo actuales. Lo que provee de una solución integral para diseñar aplicaciones de Web y elservidor de base de datos back-end. ERwin/NetDynamics Suite combina el ambiente de desarrollo deaplicación NetDynamics Java-based, ayuda a que los desarrolladores construyan rápidamenteaplicaciones de Web de alto desempeño.

ERSTUDIO 2.5

Publicación automática en el we b. ER/Studio puede documentar automáticamente un diagrama entero,generando un conjunto integrado de reportes HTML sofisticados que múltiples usuarios puedencompartir en Internet.

SYSTEM ARCHITECT 4.0

 No tiene publicación en Web.

POWERDESIGNER 6.1

Genera reporte en archivo tipo HTML.

Page 29: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 29/30

 

Herramientas CASE

2.6.3 Metodología

ERWIN 3.0

Soporta metodología para diagramas de Relación-Entidad, modelos de datos IDEF1, yYourdon/DeMarco.

ERSTUDIO 2.5

Soporta metodología de Yourdon, con diagramas relación-entidad y modelos IDEF1.

SYSTEM ARCHITECT 4.0

El editor de reporte SA también incluye más de 125 reportes pre-definidos, incluyendo reportes demetodología para Diagramas de Relación de Entidad, modelos de datos IDEF1, Diagramas de Flujo deDatos para Word & Mellor, Gane & Sarson y Yourdon/DeMarco.

POWERDESIGNER 6.1

Soporta Modelos Funcionales y Notaciones de Diagramas de Flujo Modelo Funcional de Objeto(OMT) Yourdon/DeMarco Gane & Sarson SSADM (Análisis de sistema estructurado y metodologíade diseño, Structured System Analysis & Design Methodology).

2.6.4Reportes

ERWIN 3.0

Los modelos de datos de Erwin pueden editarse, verse e imprimirse de diferentes maneras. Se incluyeun RPTwin, que es un generador de reportes gráfico y fácil de usar y un  Report Browser built-in conopciones predefinidas de reportes, que proveen un control completo sobre la apariencia y contenido de

los reportes. Además, una sola plantilla de interfaz permite aplicar un estándar de diseño y desplegar  preferencias para todos los modelos.

ERSTUDIO 2.5

Calidad de presentación en los reportes. Además de los reportes de HTML, ER/Studio puede generar reportes de alta calidad con un formato de texto amplio que esta disponible para presentaciones profesionales.

SYSTEM ARCHITECT 4.0

El editor de reportes SA es un elemento estándar en System Architect, esta herramienta permite

especificar reportes personalizados para el proyecto con un front-end fácil de usar. El editor de reporteSA también incluye más de 125 reportes pre-definidos, incluyendo reportes de metodología paraDiagramas de Relación de Entidad, modelos de datos IDEF1x, Diagramas de Flujo de Datos para Ward& Mellor, Gane & Sarson y Yourdon/DeMarco. Reportes definidos por el usuario. Los reportes pre-escritos, también pueden ser modificados con el editor de reportes GUI. Si un nuevo reporte esnecesario el reporte de GUI provee de una forma fácil y rápida de crear reportes personalizables.

Page 30: Herramientas CASE

5/10/2018 Herramientas CASE - slidepdf.com

http://slidepdf.com/reader/full/herramientas-case-55a0bf6371078 30/30

 

Herramientas CASE

Todos los reportes pueden incluir una imagen del diagrama relevante. El editor de reportes GUItambién provee de flexibilidad agregada para controlar las letras, bordes, orientación, encabezados, ymás. Cuando el reporte está listo crea un archivo ASCII y/o RTF en lugar del reporte impreso. Se usael Editor de Reportes SA para:

Reportar propiedades definidas por el usuario. Crear reportes de matrices para analizar los datos del repositorio.

Crear algo especifico, leer, actualizar, borrar (CDRU). Desempeñar Análisis de Afinidad.

POWERDESIGNER 6.1

Creación flexible de reportes estructurados a través de plantilla de reportes. Estructura de árbol deelementos seleccionados para facilitar la organización. Objetos drag-and-drop con estructura de árbol para facilitar los ajustes. Salva plantillas de reportes. Vista previa del reporte antes de imprimirlo.Seleccionar un lenguaje por omisión para el reporte. Dirigir la impresión o exportar a Microsoft Word,Word Perfect, PageMaker, etc.

2.6.5 Conclusión

Como puede notarse, no es necesario afirmar que la herramienta CASE  ERWIN   es la que ofrecemuchas ventajas de acuerdo a las características que presenta, ERwin es la herramienta más sencilla,rápida y ligera para correr, pues está basada en un componente que sólo cubre la base de datos. Aunquefinalmente, ésta decisión dependerá de las necesidades del usuario final o desarrollador del sistema,quien sin lugar a dudas determinará que herramienta puede asistirle en su trabajo. Es decir, tienelibertad de seleccionar herramientas de desarrollo que están disponibles en el mercado de acuerdo agustos y necesidades.

Por otra parte, hay que considerar que en algunos se obtienen elevados costos tanto en la adquisición

de herramientas y costos de entrenamiento de personal, como a la falta de adaptación de talherramienta a la arquitectura de la información y a metodologías de desarrollo utilizadas por laorganización. Además de que, algunas herramientas CASE no ofrecen o evalúan soluciones potenciales para los problemas relacionados con sistemas o virtualmente no llevan a cabo ningún análisis de losrequerimientos de la aplicación.