Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.
!
Tecnologías ecnologí 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 Herramientas CASE CASE Casos de Estudio
46
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
47
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
Ramón Hervás Lucas - Curso 2008/2009 - HyEP
48
Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.
!
Características Más Herramientas
Metodologías Interactivas
Escala de proyectos creciente
Demanda para Mejor control Justificación I-CASE
Complejidad de Software creciente
Demanda para Alta calidad Demanda para Alta productividad
49
Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.
!
Características Rápido Envolvimiento de Herram. Tec.
Focos de Competitividad
Carencia de estándares
Muchas nuevas Herramientas Hitos a superar por I-CASE Metodologías Múltiples de diseño
Plataformas heterogéneas
Limitaciones de la Integración tec.
50
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.
51
Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE. !
Marco de trabajo Presentación Interfaz de usuario Administración de tareas … Herramientas …
Servidor de Mensajes
Servicios de integración de datos Repositorio Sistema operativo 52
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 53
Herramientas y Entornos de Programación Tema 2. Tecnologías CASE. Entornos I-CASE.
54
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 55
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)
56
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
57
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
58
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
59
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
60
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
Fuente Simple
Puente entre Herramientas
IPSE 62
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.
H A
H B
Datos Privados
Datos Privados Traductor
63
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.
Interfaz de usuario común
H A
H B
Datos Privados
Datos Privados Traductor 64
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.
Interfaz de usuario común
H A Datos Privados
H B Datos Privados
Repositorio de Datos de Proyecto Compartido 65
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
Interfaz de usuario común H A
H B
Mecanismo de disparo Meta-datos
Repositorio de Datos de Proyecto Compartido 66