sábado, 2 de abril de 2011

Contenido

DEFINICION
Las herramientas CASE son un conjunto de herramientas y métodos asociados que proporcionan asistencia automatizada en el proceso de desarrollo del software a lo largo de su ciclo de vida.
 Fueron desarrolladas para automatizar esos procesos y facilitar las tareas  de coordinación de los eventos que necesitan ser mejorados en el ciclo de desarrollo de software.
OBJETIVOS
*     Aumentar la productividad de las áreas de desarrollo y mantenimiento de los sistemas informáticos.
*     Mejorar la calidad del software desarrollado.
*     Reducir tiempos y costos de desarrollo y mantenimiento del software.
*     Mejorar la gestión y dominio sobre el proyecto en cuanto a su planificación, ejecución y control.
*     Mejorar el archivo de datos (enciclopedia) de conocimientos (know-how) y sus facilidades de uso, reduciendo la dependencia de analistas y programadores.
Automatizar :
*     El desarrollo del software
*     La documentación
*     La generación del código
*     El chequeo de errores
*     La gestión del proyecto
Permitir:
*     La reutilización (reusabilidad) del software
*     La portabilidad del software
*     La estandarización de la documentación
*     Integrar las Mejorar el archivo de datos (enciclopedia) de conocimientos .
*     Facilitar la utilización de las distintas metodologías que desarrollan la propia ingeniería del software.

COMPONENTES O ELEMENTOS


   Repositorio
   El repositorio amplía el concepto de diccionario de datos para incluir toda la información que se va generando a lo largo del ciclo de vida del sistema.
    Apoyándose en la existencia del repositorio se efectúan comprobaciones de integridad y consistencia:
*        Que no existan datos no definidos.
*        Que no existan datos autodefinidos (datos que se emplean en una definición pero que no han sido definidos previamente).
*        Que todos los alias (referencias a un mismo dato empleando nombres distintos)  sean correctos y estén actualizados.
Las características más importantes de un repositorio son:
Tipo de información. Que contiene alguna metodología concreta, datos, gráficos, procesos, informes, modelos o reglas.
Tipo de controles. Si incorpora algún módulo de gestión de cambios, de mantenimiento de versiones, de acceso por clave, de redundancia de la información.
Módulos de Diagramación y Modelización
Este componente consiste en dar soporte para la creación de los diagramas más utilizados para el análisis y diseño del software.
Algunos de los diagramas y modelos utilizados con mayor frecuencia son:
*     Diagrama de flujo de datos.
*     Modelo entidad - interrelación.
*     Historia de la vida de las entidades.
*     Diagrama Estructura de datos.
*     Diagrama Estructura de cuadros.
*     Técnicas matriciales.

Herramienta de Prototipado
 El objetivo principal de esta herramienta es poder mostrar al usuario, desde los momentos iníciales del diseño, el aspecto que tendrá la aplicación una vez desarrollada. Ello facilitará la aplicación de los cambios que se consideren necesarios, todavía en la fase de diseño.
Los prototipos han sido utilizados ampliamente en el desarrollo de sistemas tradicionales, ya que proporcionan una realimentación inmediata, que ayudan a determinar los requisitos del sistema. Las herramientas CASE están bien dotadas, en general, para crear prototipos con rapidez y seguridad.

Generador de Código
   Normalmente se suele utilizar sobre ordenadores personales o estaciones de trabajo, por lo que el paso posterior del código al host puede traer problemas, al tener que compilar en ambos entornos.
Las características más importantes de los generadores de código son:
*     Lenguaje generado. Si se trata de un lenguaje estándar o un lenguaje  propietario.
*     Portabilidad del código generado. Capacidad para poder ejecutarlo en diferentes
     plataformas físicas y/o lógicas.
*      Generación del esqueleto del programa o del programa completo. Si únicamente  genera el esqueleto será necesario completar el resto mediante programación
*     Posibilidad de modificación del código generado. Suele ser necesario acceder
directamente al código generado para optimizarlo o completarlo.
*     Generación del código asociado a las pantallas e informes de la aplicación.
    Mediante esta característica se obtendrá la interfase de usuario de la aplicación.
Módulo Generador de Documentación
El módulo generador de la documentación se alimenta del repositorio para transcribir las especificaciones allí contenidas.
Algunas características de los generadores de documentación son:
*     Generación automática a partir de los datos del repositorio, sin necesidad de un esfuerzo adicional.
*      Combinación de información textual y gráfica, lo que hace más fácil su
   comprensión.
*     Generación de referencias cruzadas. Con ello se podrá localizar fácilmente en qué partes de la aplicación se encuentra un determinado objeto o elemento
*     Ayuda de tratamiento de textos. Facilidad para la introducción de textoscomplementarios a la documentación que se genera de forma automática.
*     Interfase con otras herramientas: procesadores de textos, editores gráficos, etc.
CLASIFICACIÓN
1. Herramientas integradas, I-CASE (Integrated CASE, CASE integrado):
abarcan todas las fases del ciclo de vida del desarrollo de sistemas. Son llamadas también CASE workbench.
2. Herramientas de alto nivel, U-CASE (Upper CASE - CASE superior) o
front-end, orientadas a la automatización y soporte de las actividades desarrolladas durante las primeras fases del desarrollo: análisis y diseño.
3. Herramientas de bajo nivel, L-CASE (Lower CASE - CASE inferior) o
back-end, dirigidas a las últimas fases del desarrollo: construcción e implantación.
4. Juegos de herramientas o Tools-Case, son el tipo más simple de
herramientas CASE. Automatizan una fase dentro del ciclo de vida. Dentro de este grupo se encontrarían las herramientas de reingeniería, orientadas a la fase de mantenimiento.
Según su Integracion:
Toolkits (Juego de herramientas)
ê   Conjunto de herramientas software que automatizan alguna fase del ciclo de vida (análisis, diseño, gestión, ...). Comparten la BD de soporte y la interfaz de usuario. Integración baja.
Workbenchs (Banco de trabajo)
ê   Conjunto de herramientas software que automatizan el ciclo de  vida en más de una fase, típicamente en  análisis + diseño + implementación (incluyendo documentación asociada). Asisten en todo el proceso y proporcionan un producto documentado y operativo. Además de compartir la BD de soporte y la interfaz de usuario, están basadas en una misma metodología. Integración  media.
IPSE (Integrated Project Support Environment)
ê   Integración alta. Cubren todo el ciclo de vida, la gestión de proyectos y de la configuración.
Por su Posicion:
Upper CASE: Herramientas de apoyo a las primeras fases
ì Métricas del software.
ì Estimación de costes.
ì Planificación temporal.
Medium CASE: Herramientas de apoyo a las fases centrales.
ì Análisis.
ì Diseño.
Lower CASE: Herramientas de apoyo a las últimas fases.
ì Implementación (generación de código).
ì Pruebas (caja blanca y caja negra).
ì Mantenimiento.
ì Documentación de la implementación y documentación para el usuario final.
Por su Funcionalidad:
*     Herramientas de planificación de sistemas de gestión.
*     Herramientas de análisis y diseño.
*     Herramientas de programación.
*     Herramientas de integración y prueba
*     Herramientas de gestión de prototipos.
*     Herramientas de mantenimiento.
*     Herramientas de gestión de proyectos.
*     Herramientas de soporte.

PRINCIPALES USUARIOS


ì Analistas
ì Desarrolladores
ì Ingenieros de Software.
VENTAJAS
Estas herramientas pueden proveer muchos beneficios en todas las etapas del proceso de desarrollo de software, algunas de ellas son:
                                                  *     Mejora en la productividad
*     Mejora en la eficacia
*     Mejora en la calidad del sistema de información
*     Disminución de tiempo
*     Automatización de tareas tediosas
*     Garantizar la consistencia de los procedimientos
*     Verificar el uso de todos los elementos en el sistema diseñado.
*     Automatizar el dibujo de diagramas.
*      Ayudar en la documentación del sistema.
*      Ayudar en la creación de relaciones en la Base de Datos.
*     Generar estructuras de código.
DESVENTAJAS
                                             *     Confiabilidad en los métodos estructurados.
*     Falta de niveles estándar para el soporte de la metodología.
*     Conflictos en el uso de los diagramas.
*     Diagramas no utilizados.
*     Función limitada.
*     Costo de adquisicion.

CARACTERíSTICAS
Características que debe Soportar…
*Soporte gráfico para varias técnicas (DFD, E/R, STD, modelos OO, etc.)
*Control de errores “Consistencia”: Unicidad identificadores, reglas metodología, etc.
*Validación entre diferentes modelos:
En una fase (p.e. entre DFD y E/R)
En varias fases (DFD análisis y diseño; DFD diseño y Diagrama de estructuras).

Caracteristicas Deseables
*     Soporte multiusuario.
*     Personalización.
*     Control de documentos y versiones.
*     Gestión de proyectos
*     Estadísticas de productividad y métricas del software.
*     Pruebas.
*     Simulación y prototipado.
*     Demostración correcciones especificaciones y/o software.
*     Generación de código.

EJEMPLOS DE HERRAMIENTAS CASE
Herramientas CASE  mas utilizadas
Erwin
PLATINUM ERwin es una herramienta de diseño de base de datos. Brinda productividad en diseño, generación, y mantenimiento de aplicaciones. Desde un modelo lógico de los requerimientos de información, hasta el modelo físico perfeccionado para las características específicas de la base de datos diseñada.
èVer mas informacion en la Pestaña Ejemplos de Herramientas Case
EasyCASE
Esta herramienta permite automatizar las fases de análisis y diseño dentro del desarrollo de una aplicación, para poder crear las aplicaciones eficazmente – desde procesamiento de transacciones a la aplicación de bases de datos de cliente/servidor, así como sistemas de tiempo real.
èVer mas informacion en la Pestaña Ejemplos de Herramientas Case
Oracle Designer
Oracle Designer es un juego de herramientas para guardar las definiciones que necesita el usuario y automatizar la construcción rápida de aplicaciones cliente/servidor flexibles y gráficas.Integrado con Oracle Developer
PowerDesigner
PowerDesigner es una suite de aplicaciones de Powersoft para la construcción, diseño y modelado de datos a través de diversas aplicaciones. Es la herramienta para el análisis, diseño inteligente y construcción sólida de una base de datos y un desarrollo orientado a modelos de datos a nivel físico y conceptual, que dan a los desarrolladoresCliente/Servidor la más firme base para aplicaciones de altorendimiento.

System Architect
Esta herramienta posee un repositorio único que integra todas las herramientas, y metodologías usadas. En la elaboración de los diagramas, el System Architect conecta directamente al diccionario de datos, los elementos asociados, comentarios, reglas de validaciones, normalización, etc.
Posee control automático de diagramas y datos, normalizaciones y balanceamiento entre diagramas "Padre e Hijo", además de balanceamiento horizontal, que trabaja integrado con el diccionario de datos, asegurando la compatibilidad entre el Modelo de Datos y el Modelo Funcional.

Rational Rose
Rational Rose es una herramienta de producción y comercialización establecidas por Rational Software Corporation( actualmente parte de IBM). Rose es un instrumento operativo conjunto que utiliza el Lenguaje Unificado (UML) como medio para facilitar la captura de dominio de la semántica, la arquitectura y el diseño. Este software tiene la capacidad de :Crear,Ver,Modificar y Manipular los componentes de un modelo.

CRITERIOS PARA LA SELECCIÓN DE UNA HERRAMIENTA CASE
*     Tipo de computador (MainFrame, Ws, PC, ...)
*     Lenguaje al que va orientada.
*     Metodología soportada.
*     Posibilidades de integración con otras plataformas (presentes y futuras).
*     Criterios habituales en la selección de software: formación, precio, asistencia técnica, mantenimiento.
HERRAMIENTAS CASE ORIENTADAS A OBJETOS
Muchos de los beneficios son alcanzados únicamente cuando el Análisis y Diseño son utilizados con herramientas CASE Orientadas a Objetos, basados en repositorios que generan códigos.

*     Fomenta la reutilización y extensión del código.
*     Permite crear sistemas más complejos.
*     Relacionar el sistema al mundo real.
*     Facilita la creación de programas visuales.
*     Construcción de prototipos
*     Agiliza el desarrollo de software
*     Facilita el trabajo en equipo
*     Facilita el mantenimiento del software
Lo interesante de la Programación Orientada a Objetos es que proporciona conceptos y herramientas con las cuales se modela y representa el mundo real tan fielmente como sea posible.

HERRAMIENTAS CASE ESTRUCTURAS
Las herramientas Case utilizarán técnicas gráficas para diseñar las clases y sus interacciones, y para utilizar objetos existentes adaptados en nuevas aplicaciones.Las herramientas deberían facilitar el modelamiento en términos de eventos, triggers (iniciadores), estado de los objetos, etc. Las herramientas de los CASE Orientados a Objetos generan códigos tan pronto como una clase sea definida y permitirá al diseñador probar y utilizar el método creado.
Las herramientas deberán ser diseñadas para estimular la máxima creatividad y continuo refinamiento del diseño durante la construcción.

COSTOS
El costo es una de las mayores desventajas por la que muchas empresas y desarrolladores no utilizan herramientas CASE. De acuerdo con la Tabla 1.1 el rango de precios de éstas herramientas en sus versiones para empresas van de los $500.00 hasta más de los $4,000.00 dólares, esto sin contar con los costos de entrenamiento y mantenimiento. Por ello se debe hacer un buen balance entre los costos y los beneficios que traería la adopción de una herramienta CASE.
POWER BUILDER
Precio: 2.833€
BORLAND TOGETHER 6.1
Precio: 1500 €
RATIONAL ROSE SOFTWARE
Precio: 1,057 €
POWER DESIGNER 6.1.
Precio: $2092.98 (dólares)

1 comentario:

  1. esta bueno tu pagina pero en ver mas ejemplos ya no muestra la pagina puedes volver a subirlo por favor

    ResponderEliminar