Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el...

20
46 Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE. Tecnologías CASE Introducción. Conceptos, Objetivos, Herramientas y Métodos de las tecnologías CASE Clasificación de herramientas CASE Entornos CASE Integrados (I-CASE) Adopción de Herramientas CASE Casos de Estudio

Transcript of Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el...

Page 1: Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el reintroducir de los datos en cada una de las herramientas disponibles. Evitar errores

46

Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.

 Tecnologías CASE

  Introducción. Conceptos, Objetivos, Herramientas y Métodos de las tecnologías CASE

  Clasificación de herramientas CASE   Entornos CASE Integrados (I-CASE)   Adopción de Herramientas CASE   Casos de Estudio

Page 2: Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el reintroducir de los datos en cada una de las herramientas disponibles. Evitar errores

47

Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.

  Concepto

¿En que consiste la integración?   Combinación: Combina diferentes herramientas y modelos   Clausura: Permite la comunicación entre las herramientas, las personas y

los procesos

El verdadero poder de la tecnología CASE se obtiene a través de la Integración (I-CASE) Integrated Computer Assisted Software Engineering

Page 3: Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el reintroducir de los datos en cada una de las herramientas disponibles. Evitar errores

Ramón Hervás Lucas - Curso 2008/2009 - HyEP 48

Herramientas y Entornos de Programación Tema 2. L4G y CASE. Entornos I-CASE.

  Características

  Aportar algún modo de compartir información entre las herramientas en el entorno

  Permitir la detección de cambios en los elementos de información relacionados

  Permitir el control de diferentes versiones

  Permitir el acceso directo a cualquiera de las herramientas   Permitir la integración de procedimientos y herramientas en una estructura de

fragmentación   Mantener la consistencia en el aspecto y en la interacción de la interfaz

  Soportar la comunicación entre los Ingenieros de Software   Mantener juntas a las herramientas y las técnicas con vistas a mejorar el

proceso y el producto

Page 4: Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el reintroducir de los datos en cada una de las herramientas disponibles. Evitar errores

49

Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.

  Características

Justificación I-CASE

Más Herramientas

Demanda para Alta productividad

Demanda para Alta calidad

Demanda para Mejor control

Metodologías Interactivas

Complejidad de Software creciente

Escala de proyectos creciente

Page 5: Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el reintroducir de los datos en cada una de las herramientas disponibles. Evitar errores

50

Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.

  Características

Hitos a superar por I-CASE

Rápido Envolvimiento

de Herram. Tec.

Limitaciones de la Integración tec.

Metodologías Múltiples de

diseño

Muchas nuevas Herramientas

Focos de Competitividad

Plataformas heterogéneas

Carencia de estándares

Page 6: Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el reintroducir de los datos en cada una de las herramientas disponibles. Evitar errores

51

Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.

  Características:   ¿Por qué compartir datos entre las herramientas?

  Evitar el reintroducir de los datos en cada una de las herramientas disponibles.

  Evitar errores humanos al reintroducir los datos.

  Evitar la dificultad del manejo de datos cuando los proyectos crecen.

  Las Herramientas CASE integradas proponen un único repositorio de base de datos para todas la herramientas de diseño, representación, etc.

  Facilita la documentación en todas las etapas del desarrollo.

Page 7: Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el reintroducir de los datos en cada una de las herramientas disponibles. Evitar errores

52

Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.

  Marco de trabajo

Presentación

Interfaz de usuario

Servicios de integración de datos

Repositorio

Sistema operativo

… Herramientas …

Administración de tareas

Servidor de Mensajes

Page 8: Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el reintroducir de los datos en cada una de las herramientas disponibles. Evitar errores

53

Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.

  Marco de trabajo   Presentación: Define cómo se van a ser vistas (por el usuario) todas las

herramientas del ambiente CASE: Menús, mensajes de ayuda, mensajes de error, entre otros

  Interfaz de usuario: Establece un mecanismo para un GUI particular: Administrador de ventanas, menús de contexto, botones, entre otros

  Administrador de tareas: Permite al desarrollador definir y ejecutar tareas que requieren cooperación y sincronización de dos o más herramientas

  Servicios de integración de datos (Administrador de objetos o de entregables): Permite comunicar las herramientas con el repositorio y administra los metadatos y las vistas para los desarrolladores.

  Repositorio: Provee administración para los datos comunes y enlaces entre todas las herramientas del ambiente CASE y debe ser capaz de administrar cualquier tipo de objeto: (Información textual, gráfica o binaria, diagramas de flujo, diagrama ER, etc.) y las relaciones entre ellos.

  Servidor de Mensajes: Provee de un canal de comunicación entre las herramientas y el ambiente CASE

Page 9: Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el reintroducir de los datos en cada una de las herramientas disponibles. Evitar errores

54

Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.

Page 10: Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el reintroducir de los datos en cada una de las herramientas disponibles. Evitar errores

55

Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.

  Beneficios

  Transferencia fácil de información (modelos, programas, documentos, datos) entre unas herramientas y otras y entre una etapa del desarrollo y la siguiente.

  Reducción del esfuerzo necesario para actividades de carácter general (gestión de configuración, aseguramiento de la calidad o documentación)

  Mayor control sobre el proyecto al mejorar la planificación, la monitorización y la comunicación

  Mejor coordinación entre las personas que participan en un proyecto software

También existen herramientas especialmente diseñadas para ayudar a integrar diversas herramientas CASE. Estos entornos de integración se denominan Frameworks

Page 11: Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el reintroducir de los datos en cada una de las herramientas disponibles. Evitar errores

56

Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.

  Beneficios

  Interfaz de usuario común   Soporte a “plataformas” orientadas a objetos.

  Interfaces gráficas estándares (modelos).

  Fácil manipulación y registro sin hacer cambio en el código fuente

  Interfaz de herramienta   Herramientas verticales: Partes de ciclo de vida del proyecto

  Herramientas horizontales: Procesos de mantenimientos de las partes, como desarrollo manejado por múltiples desarrolladores (check-in y check-out)

Page 12: Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el reintroducir de los datos en cada una de las herramientas disponibles. Evitar errores

57

Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.

  Beneficios   Control y comunicación de herramientas

  Permite comunicación entre herramientas y la interacción a través de mensajes, eventos y disparadores de datos

  Permite al usuario definir y ejecutar tareas con varias herramientas de forma secuencial y concurrente

  Manejo de Repositorio del proyecto (Sin redundancia, Adm. BD del proyecto)

  Manejo de datos internos del proyecto

  Manejo de activos de información

  Debe funcionar en red de diferentes plataformas

  Mecanismos de corrección, validación, diseño y correctitud de la información que ingresa a la BD del proyecto

  Meta datos, dependencia y relaciones entre los activos que forman parte del proyecto. Reglas de comunicación entre las herramientas CASE

Page 13: Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el reintroducir de los datos en cada una de las herramientas disponibles. Evitar errores

58

Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.

  Beneficios

  Administración de entregables   Debe operar y administrar el espectro completo de entregables del

desarrollo de software (Especificaciones, códigos fuentes, archivos, métricas, entre otros objetos)

  Características principales de la administración de entregables:   La habilidad de definir objetos de tamaño arbitrario y granularidad   La habilidad de administrar ligas de versión entre cualquier grupo de objetos

  La habilidad para asociar objetos dentro de colecciones que pueden ser manipuladas y versionadas como un objeto sencillo

  Portabilidad del Sistema Operativo   Independencia con la plataforma y sistema operativo

Page 14: Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el reintroducir de los datos en cada una de las herramientas disponibles. Evitar errores

59

Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.

  Beneficios   Administración de la Configuración

  Habilidad de administrar las versiones, ligas entre los componentes y los activos administrados (Documentos, librerías, módulos, etc.)

  Debe construir facilidades para administrar el compilador y los procesos ligados los cuales son parte de la configuración

  Administración de las versiones de los componentes

  Trazabilidad   Debe de soportar la habilidad de trazar el sistema completo a través de

documentación de análisis y diseño   Ayuda a asegurar la calidad de sistema ya que ayuda a encontrar todos los

requerimientos y la especificación de los mismos

  Ayuda a mantener las documentaciones acorde con las versiones   Ayuda a mantener las pista de las ligas entre los componentes de un proyecto

Page 15: Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el reintroducir de los datos en cada una de las herramientas disponibles. Evitar errores

60

Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.

  Beneficios   Administración de contexto

  Hacer vistas de una parte en especial del proyecto (Base de Datos, códigos, etc.)

  Un programador puede ver la parte que le corresponde ó su “Subconjunto de espacio de trabajo” sin tener que impactar el resto del proyecto

  Se puede incluir componentes de seguridad para evitar que partes privadas sean manipuladas por otros

  Transparencia en la red   Debe proveer facilidad y acceso a los datos, de forma transparente para el usuario   De esta forma se puede trabajar en un sistema robusto de red (Desde estaciones

de trabajo en forma remota)   Se tiene la configuración de cada usuario bajo control

  Trabajar en forma distribuida

  Simulaciones   Debugeo, depuración de sistemas y soporte en forma remota

Page 16: Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el reintroducir de los datos en cada una de las herramientas disponibles. Evitar errores

62

Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.

 Opciones de Integración  Convenciones de notación

Herramienta Individual

Intercambio de Datos

Puente entre Herramientas

Fuente Simple IPSE

Page 17: Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el reintroducir de los datos en cada una de las herramientas disponibles. Evitar errores

63

Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.

  Opciones de Integración

  Herramientas CASE separadas. En este caso, las salidas suelen ser de texto sobre papel. Los enlaces son manuales. La integración es manual.

  Intercambio de datos Punto-a-Punto. Las herramientas exportan datos en un fichero. Los constructores de las herramientas CASE, realizan puentes entre herramientas.

Traductor

H A H B

Datos Privados Datos Privados

Page 18: Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el reintroducir de los datos en cada una de las herramientas disponibles. Evitar errores

64

Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.

  Opciones de Integración

  Acceso común a las Herramientas. El utilizador puede abrir varias herramientas simultáneamente. Comparación visual entre las Herramientas. Los procesos de transferencia son sencillos.

Traductor

H A H B

Datos Privados Datos Privados

Interfaz de usuario común

Page 19: Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el reintroducir de los datos en cada una de las herramientas disponibles. Evitar errores

65

Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.

  Opciones de Integración

  Gestión de Datos común. Los datos de varias herramientas pueden ser mantenidos en una sola Base de Datos. Un solo suministrador de CASE integra diversas Herramientas en un solo paquete.

Repositorio de Datos de Proyecto Compartido

H A H B

Datos Privados Datos Privados

Interfaz de usuario común

Page 20: Tecnologías CASE - mami.uclm.esmami.uclm.es/.../HyEP-Tema2-TecCASE-PArt2Low.pdf · Evitar el reintroducir de los datos en cada una de las herramientas disponibles. Evitar errores

66

Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.

  Opciones de Integración

  Integración completa. Gestión de Metadatos: Definición de objetos, relaciones y dependencias entre objetos, reglas de diseño de software, flujos de trabajo. Facilidades de Control: Permite la comunicación con el resto del entorno IPSE

Repositorio de Datos de Proyecto Compartido

H A H B

Interfaz de usuario común

Mecanismo de disparo Meta-datos