unidad de aprendizaje iv.docx

32
INTRODUCCIÓN a) Presentación y contextualización Es importante conocer todas las formas de bases de datos que existen, en esta unidad veremos las herramientas automatizadas de diseño es la automatización del desarrollo del software, contribuyendo a mejorar la calidad y la productividad en el desarrollo de sistemas de información en el cual la herramienta case es una de ellas. Las metodologías de diseño orientadas a objetos y a la estructura de datos. b) Competencia Realizar una base de datos efectiva y eficaz utilizando el mínimo de tiempo para su construcción y seleccionando las herramientas utilizadas en la unidad. c) Capacidades 1. Aprende a diseñar un diagrama orientado a objetos. 2. Conoce y diseñar un estructura de datos con los conceptos estudiados. 3. Realiza una automatización de diseño reconociendo correctamente sus herramientas. 4. Reconocer las herramienta case para diseñar una base de datos d) Actitudes Lee con dedicación el material. Se esfuerza por comprender la importancia de las herramientas case. Dar a entender las herramientas automatizadas de diseño y ponerlo en práctica. e) Presentación de Ideas básicas y contenido esenciales de la unidad: La Unidad de Aprendizaje 04: Utilización del diseño orientado a objetos, comprende el desarrollo de los siguientes temas: TEMA 01: Diseño orientado a objetos.

Upload: francisco-jaimes-espinoza

Post on 18-Dec-2015

221 views

Category:

Documents


0 download

TRANSCRIPT

INTRODUCCINa)Presentacin y contextualizacinEs importante conocer todas las formas de bases de datos que existen, en esta unidad veremos las herramientas automatizadas de diseo es la automatizacin del desarrollo del software, contribuyendo a mejorar la calidad y la productividad en el desarrollo de sistemas de informacin en el cual la herramienta case es una de ellas. Las metodologas de diseo orientadas a objetos y a la estructura de datos.b)CompetenciaRealizaruna base de datos efectiva y eficaz utilizando el mnimo de tiempo para su construccin y seleccionando las herramientas utilizadas en la unidad.c)Capacidades1.Aprende a disear un diagrama orientado a objetos.2.Conoce y disear un estructura de datos con los conceptos estudiados.3.Realiza una automatizacin de diseo reconociendo correctamente sus herramientas.4.Reconocer las herramienta case para disear una base de datosd)ActitudesLee con dedicacin el material.Se esfuerza por comprender la importancia de las herramientas case.Dar a entender las herramientas automatizadas de diseo y ponerlo en prctica.e) Presentacin de Ideas bsicas y contenido esenciales de la unidad:La Unidad de Aprendizaje 04: Utilizacin del diseo orientado a objetos, comprende el desarrollo de los siguientes temas:TEMA 01:Diseo orientado a objetos.TEMA 02:Diseo estructurado a datos.TEMA 03:Presentacin de las herramientas automatizada (software) de diseo.TEMA 04:Herramientas case.Tema 01:Diseo Orientado a ObjetosDiseo orientado a objetos es una fase de la metodologa orientada a objetos para el desarrollo de Software. Su uso induce a los programadores a pensar en trminos de objetos, en vez de procedimientos, cuando planifican su cdigo. Un objeto agrupa datos encapsulados y procedimientos para representar una entidad.

1.DIAGRAMA DE CASOS DE USOSEn el Lenguaje de Modelado Unificado, un diagrama de casos de uso es una especie de diagrama de comportamiento. UML mejorado El Lenguaje de Modelado Unificado define una notacin grfica para representar casos de uso llamada modelo de casos de uso. UML no define estndares para que el formato escrito describa los casos de uso, y as mucha gente no entiende que esta notacin grfica define la naturaleza de un caso de uso; sin embargo una notacin grfica puede solo dar una vista general simple de un caso de uso o un conjunto de casos de uso. Los diagramas de casos de uso son a menudo confundidos con los casos de uso. Mientras los dos conceptos estn relacionados, los casos de uso son mucho ms detallados que los diagramas de casos de uso.

1.1ActorSe le llama actor a toda entidad externa al sistema que guarda una relacin con ste y que le demanda una funcionalidad. Esto incluye a los operadores humanos pero tambin incluye a todos los sistemas externos, adems de entidades abstractas, como el tiempo.En el caso de los seres humanos se pueden ver a los actores como definiciones de rol por lo que un mismo individuo puede corresponder a uno o ms Actores. Suele suceder sin embargo, que es el sistema quien va a tener inters en el tiempo.

Es frecuente encontrar que nuestros sistemas deben efectuar operaciones automticas en determinados momentos; y siendo esto un requisito funcional obvio, resulta de inters desarrollar alguna forma de capturar dicho requisito en el modelo de caso de uso final.

1.2RelacionesLas tres relaciones principales entre los casos de uso son soportadas por el estndar UML, el cual describe notacin grfica para esas relaciones. Veamos una revisin de ellas a continuacin:Inclusin (include o use)Es una forma de interaccin o creacin, un caso de uso dado puede "incluir" otro caso de uso. El primer caso de uso a menudo depende del resultado del caso de uso incluido.Esto es til para extraer comportamientos verdaderamente comunes desde mltiples casos de uso a una descripcin individual, desde el caso de uso. El estndar de Lenguaje de Modelado Unificado de OMG define una notacin grfica para realizar diagramas de casos de uso, pero no el formato para describir casos de uso. Mucha gente sufre la equivocacin pensando que un caso de uso es una notacin grfica (o es su descripcin). Mientras la notacin grfica y las descripciones esto no sirve.

Extensin (Extend)Es otra forma de interaccin, un caso de uso dado (la extensin) puede extender a otro. Esta relacin indica que el comportamiento del caso de la extensin se utiliza en casos de uso, un caso de uso a otro caso siempre debe tener extensin o inclusin. El caso de uso extensin puede ser insertado en el caso de uso extendido bajo ciertas condiciones.

La notacin, es una flecha de punta abierta con lnea discontinua, desde el caso de uso extensin al caso de uso extendido, con la etiquetaextend. Esto puede ser til para lidiar con casos especiales, o para acomodar nuevos requisitos durante el mantenimiento del sistema y su extensin."La extensin, es el conjunto de objetos a los que se aplica un concepto. Los objetos de la extensin son los ejemplos o instancias de los conceptos."

Generalizacin"Entonces la Generalizacin es la actividad de identificar elementos en comn entre conceptos y definir las relaciones de una superclase (concepto general) y subclase (concepto especializado).Es una manera de construir clasificaciones taxonmicas entre conceptos que entonces se representan en jerarquas de clases.Las subclases conceptuales son conformes con las superclases conceptuales en cuanto a la intencin y extensin."En la tercera forma de relaciones entre casos de uso, existe una relacin generalizacin/especializacin. Un caso de uso dado puede estar en una forma especializada de un caso de uso existente. La notacin es una lnea slida terminada en un tringulo dibujado desde el caso de uso especializado al caso de uso general. Esto se asemeja al concepto orientado a objetos de sub-clases, en la prctica puede ser til factorizar comportamientos comunes, restricciones al caso de uso general, describirlos una vez, y enfrentarse a los detalles excepcionales en los casos de uso especializados.

1.DIAGRAMA DE CLASESUn diagrama de clases es un tipo de diagrama esttico que describe la estructura de un sistema mostrando sus clases, atributos y las relaciones entre ellos. Los diagramas de clases son utilizados durante el proceso de anlisis y diseo de los sistemas, donde se crea el diseo conceptual de la informacin que se manejar en el sistema, y los componentes que se encargaran del funcionamiento y la relacin entre uno y otro.

a.Clases(Atributos, mtodos y visibilidad)Los atributos:o caractersticas de una clase pueden ser de tres tipos, los que definen el grado de comunicacin y visibilidad de ellos con el entorno,Mtodos: Los mtodos u operaciones de una clase son la forma en como sta interacta con su entorno.b.Relaciones(Herencia, Composicin, Agregacin, Asociacin y Uso)Herencia (Especializacin/Generalizacin): Indica que una subclase hereda los mtodos y atributos especificados por una Super Clase, por ende la Subclase adems de poseer sus propios mtodos y atributos, poseer las caractersticas y atributos visibles de la Super Clase (public y protected).

Agregacin:Para modelar objetos complejos, bastan los tipos de datos bsicos que proveen los lenguajes: enteros, reales y secuencias de caracteres. Cuando se requiere componer objetos que son instancias de clases definidas por el desarrollador de la aplicacin-Asociacin:La relacin entre clases conocida como Asociacin, permite asociar objetos que colaboran entre si. Cabe destacar que no es una relacin fuerte, es decir, el tiempo de vida de un objeto no depende del otro.

3.DIAGRAMA DE TRANSICIN DE ESTADOSLos diagramas de estado muestran el conjunto de estados por los cuales pasa un objeto durante su vida en una aplicacin en respuesta a eventos (por ejemplo, mensajes recibidos, tiempo rebasado o errores), junto con sus respuestas y acciones.

Tambin ilustran qu eventos pueden cambiar el estado de los objetos de la clase. Normalmente contienen: estados y transiciones. Como los estados y las transiciones incluyen, a su vez, eventos, acciones y actividades, vamos a ver primero sus definiciones.Al igual que otros diagramas, en los diagramas de estado pueden aparecer notas explicativas y restricciones.

3.1. EstadoComportamiento del sistema que es observable en el tiempo. Los sistemas tienen un estado inicial, pero pueden tener mltiples estados finales (mutuamente excluyentes).Cambios de estados: condiciones y acciones.Un diagrama de transicin de estados puede utilizarse como una especificacin de proceso de un proceso de control de un DFD.

3.2. TransicinSon grafos dirigidos que especifican el reconocimiento de un token como elemento del lenguaje.En un diagrama de transicin (DT) se compila un token.Partes:

Tema 02:Diseo Estructurado de Datos1.DIAGRAMA DE ESTRUCTURAEs una forma de descomposicin funcional, muestra la particin del sistema en mdulos y su jerarqua. Es unrbol o diagrama jerrquico que define la arquitectura completa de un sistema mostrando sus mdulos y sus interrelaciones.El sistema se representa como un conjunto de mdulos ordenados jerrquicamente.

Reglas:1.El nombre del mdulo debe ser un nombre descriptivo que explique la tarea que se realiza. Est formado por un verbo en infinitivo y un sustantivo.2.Hay un solo mdulo hasta arriba de la estructura, desde el cual se origina el control y al que se llama raz.

3.Desde la raz, el control pasa a travs de la estructura nivel por nivel a los dems mdulos. Cuando el programa termina su ejecucin el control regresa a la raz.4.Hay a lo ms una relacin de control entre dos mdulos, esto es, si el mdulo A llama al mdulo B, el mdulo B no puede llamar a A, ni a s mismo.5.Los dos tipos bsicos de informacin que se puede comunicar entre los mdulos son:a.Informacin de datos: usada en el problemab.Informacin de control: se usa para dirigir el flujo de ejecucin, tal como una bandera de error.6.Los datos se pueden transferir en cualquier direccin entre los mdulos.7.La seleccin se refiere al uso de condiciones para controlar si se ejecuta un mdulo o no.

Ejemplo:

2.DIAGRAMA DE FLUJO DE DATOS (DFD)Muestran en forma visual slo el flujo de datos entre los distintos procesos, entidades externas y almacenes que conforman un sistema.Cuando los analistas de sistemas indagan sobre los requerimientos de informacin de los usuarios, deben ser capaces de concebir. la manera en que los datos fluyen a travs del sistema u organizacin, los procesos que sufren estos datos y sus tipos de salidas.

2.1Elementos de un diagrama de flujo de datos

1.1Otros smbolos para los elementosde un DFD

3. MODELO ENTIDAD/RELACION EXTENDIDOEs un modelo conceptual de datos de alto nivel: Sirve para representar los conceptos del Mundo que nos interesan con sus relaciones y caractersticas.Es una herramienta muy utilizada directamente o a travs de otras herramientas o programas (como Data-Architect de Sybase).FASES en el DISEO de una BASE de DATOS:Fases independientes del SGBD (Sistema Gestor de Bases de Datos, o DBMS DataBase Management System), para obtener:Esquema Conceptual: Definicin de datos, relaciones...Especificacin de funciones necesarias (transacciones).Fases dependientes del SGBD, para obtener:Esquema Interno: Ficheros donde almacenar datos, directorios...Programas para efectuar las transacciones.

3.1 Modelo entidad relacin extendido1.2Modelo entidad relacin extendido

Tema 03: Presentacin de las Herramientas Automatizadas (software) de DiseoLas herramientas CASE (Computer Aided Software Engineering, Ingeniera de Software Asistida por Ordenador) son diversas aplicaciones informticas destinadas a aumentar la productividad en el desarrollo reduciendo el coste de las mismas en trminos de tiempo y de dinero. Estas herramientas nos pueden ayudar en todos los aspectos del ciclo de vida de desarrollo del software en tareas como el proceso de realizar un diseo del proyecto, clculo de costes, implementacin de parte del cdigo automticamente con el diseo dado, compilacin automtica, documentacin o deteccin de errores entre otras.Es un sistema de software que intenta proporcionar ayuda automatizada a las actividades del proceso de software. Los sistemas CASE a menudo se utilizan como apoyo al mtodo. La primera herramienta CASE como hoy la conocemos fueExcelerator en 1984 , era para PC . Actualmente la oferta de herramientas CASE es muy amplia y tenemos por ejemplo elEASYCASE o WINPROJECT .

1.HISTORIAYa en los aos 70 un proyecto llamado ISDOS dise un lenguaje y por lo tanto un producto que analizaba la relacin existente entre los requisitos de un problema y las necesidades que stos generaban, el lenguaje en cuestin se denominaba PSL (Problem Statement Language) y la aplicacin que ayudaba a buscar las necesidades de los diseadores PSA (Problem Statement Analyzer).

Aunque sos son los inicios de las herramientas informticas que ayudan a crear nuevos proyectos informticos, la primera herramienta CASE fue Excelerator que sali a la luz en el ao 1984 y trabajaba bajo una plataforma PC.

Las herramientas CASE alcanzaron su techo a principios de los aos 90. En la poca en la que IBM haba conseguido una alianza con la empresa de software AD/Cycle para trabajar con sus mainframes, estos dos gigantes trabajaban con herramientas CASE que abarcaban todo el ciclo de vida del software. Pero poco a poco los mainframes han ido siendo menos utilizados y actualmente el mercado de las Big CASE ha muerto completamente abriendo el mercado de diversas herramientas ms especficas para cada fase del ciclo de vida del software.

2.TECNOLOGA DE HERRAMIENTA CASELa tecnologa CASE supone la automatizacin del desarrollo del software, contribuyendo a mejorar la calidad y la productividad en el desarrollo de sistemas de informacin. Para mejorar la calidad y la productividad de los sistemas de informacin a la hora de construir software se plantean los siguientes objetivos:Permitir la aplicacin prctica de metodologas estructuradas, las cuales al ser realizadas con una herramienta conseguimos agilizar el trabajo.Facilitar la realizacin de prototipos y el desarrollo conjunto de aplicaciones.Simplificar el mantenimiento de los programas.Mejorar y estandarizar la documentacin.Aumentar la portabilidad de las aplicaciones.Facilitar la reutilizacin de componentes software.Permitir un desarrollo y un refinamiento visual de las aplicaciones, mediante la utilizacin de grficos.

3.COMPONENTES DE HERRAMIENTAS CASEDe una forma esquemtica podemos decir que una herramienta CASE se compone de los siguientes elementos:Repositorio (diccionario) donde se almacenan los elementos definidos o creados por la herramienta, y cuya gestin se realiza mediante el apoyo de un Sistema de Gestin de Base de Datos (SGBD) o de un sistema de gestin de ficheros.

Metamodelo (no siempre visible), que constituye el marco para la definicin de las tcnicas y metodologas soportadas por la herramienta.Carga o descarga de datos, son facilidades que permiten cargar el repertorio de la herramienta CASE con datos provenientes de otros sistemas, o bien generar a partir de la propia herramienta esquemas de base de datos, programas, etc. que pueden, a su vez, alimentar otros sistemas. Este elemento proporciona as un medio de comunicacin con otras herramientas.Comprobacin de errores, facilidades que permiten llevar a cabo un anlisis de la exactitud, integridad y consistencia de los esquemas generados por la herramienta.Interfaz de usuario, que constar de editores de texto y herramientas de diseo grfico que permitan, mediante la utilizacin de un sistema de ventanas, iconos y mens, con la ayuda del ratn, definir los diagramas, matrices, etc. que incluyen las distintas metodologas.

4.ESTRUCTURA DE UNA HERRAMIENTA CASELa estructura CASE se basa en la siguiente terminologa:CASE de alto nivel son aquellas herramientas que automatizan o apoyan las fases finales o superiores del ciclo de vida del desarrollo de sistemas como la planificacin de sistemas, el anlisis de sistemas y el diseo de sistemas.CASE de bajo nivel son aquellas herramientas que automatizan o apoyan las fases finales o inferiores del ciclo de vida como el diseo detallado de sistemas, La implantacin y el soporte de sistemas.CASE cruzado de ciclo de vida se aplica a aquellas herramientas que apoyan actividades que tienen lugar a lo largo de todo el ciclo de vida, se incluyen actividades como la gestin de proyectos y la estimacin.

5.CLASIFICACINAunque no es fcil y no existe una forma nica de clasificarlas, las herramientas CASE se pueden clasificar teniendo en cuenta los siguientes parmetros:1.Las plataformas que soportan.2.Lasfases del ciclo de vida del desarrollo de sistemas que cubren.3.La arquitectura de las aplicaciones que producen.4.Su funcionalidad.

La clasificacinbasada en las fases del ciclo de desarrollo cubre:Upper CASE (U-CASE), herramientas que ayudan en las fases de planificacin, anlisis de requisitos y estrategia del desarrollo, usando, entre otros diagramas UML.Middle CASE (M-CASE), herramientas para automatizar tareas en el anlisis y diseo de la aplicacin.Lower CASE (L-CASE), herramientas que semi-automatizan la generacin de cdigo, crean programas de deteccin de errores, soportan la depuracin de programas y pruebas. Adems automatizan la documentacin completa de la aplicacin. Aqu pueden incluirse las herramientas de Desarrollo rpido de aplicaciones.

Existen otros nombres que se le dan a este tipo de herramientas, y que no es una clasificacin excluyente entre s, ni con la anterior:Integrated CASE (I-CASE), herramientas que engloban todo el proceso de desarrollo software, desde anlisis hasta implementacin.

MetaCASE, herramientas que permiten la definicin de nuestra propia tcnica de modelado, los elementos permitidos del metamodelo generado se guardan en un repositorio y pueden ser usados por otros analistas, es decir, es como si definiramos nuestro propio UML, con nuestros elementos, restricciones y relaciones posibles.CAST (Computer-Aided Software Testing), herramientas de soporte a la prueba de software.IPSE (Integrated Programming Support Environment), herramientas que soportan todo el ciclo de vida, incluyen componentes para la gestin de proyectos y gestin de la configuracin.

Por funcionalidad podramos diferenciar algunas como:Herramientas de generacin semiautomtica de cdigo.Editores UML.Herramientas de Refactorizacin de cdigo.Herramientas de mantenimiento como los sistemas de control de versiones.

6.EJEMPOS DE HERRAMIENTAS CASE MAS UTILIZADASERwinPLATINUM ERwin es una herramienta de diseo de base de datos. Brinda productividad en diseo, generacin, y mantenimiento de aplicaciones. Desde un modelo lgico de los requerimientos de informacin, hasta el modelo fsico perfeccionado para las caractersticas especficas de la base de datos diseada, ERwin permite visualizar la estructura, los elementos importantes, y optimizar el diseo de la base de datos. Genera automticamente lastablas y miles de lneas de stored procedure ytriggers para los principales tipos de base de datos.

EasyCASEEasyCASE Profesional, el centro de productos para procesos, modelamiento de datos y eventos, EI ingeniera de Base de Datos, es un producto para la generacin de esquemas de base de datos el ingeniera reversa, trabaja para proveer una solucin comprensible para el diseo, consistencia y documentacin del sistema en conjunto.Oracle DesignerOracle Designer es un juego de herramientas para guardar las definiciones que necesita el usuario y automatizar la construccin rpida de aplicaciones cliente/servidor flexibles y grficas. Integrado con Oracle, Oracle Designer provee una solucin para desarrollar sistemas empresariales cliente/servidor de segunda generacin.

PowerDesignerPowerDesigner es una suite de aplicaciones de Powersoft para la construccin, diseo y modelado de datos a travs de diversasaplicaciones. Es la herramienta para el anlisis, diseo inteligente y construccin slida de una base de datos y un desarrollo orientado a modelos de datos a nivel fsico y conceptual, que dan a los desarrolladores Cliente/Servidor la ms firme base para aplicaciones de alto rendimiento.

System ArchitectSystem Architect posee un repositorio nico que integra todas las herramientas, y metodologas usadas. En la elaboracin delos diagramas, el System Architect conecta directamente al diccionario de datos, los elementos asociados, comentarios,reglas de validaciones, normalizacin, etc.Posee control automtico de diagramas y datos, normalizaciones y balanceamiento entre diagramas "Padre e Hijo", adems de balanceamiento horizontal, que trabaja integrado con el diccionario de datos, asegurando la compatibilidad entre el Modelo de Datos y el Modelo Funcional.

7.SNAPSNAP es un CASE (Ingeniera de Software Asistida por el Computador) para el desarrollo de aplicaciones en Sistemas AS/400 de IBM. Proporciona el ambiente integral de trabajo, brindando la posibilidad de construir sistemas de inmejorable calidad, adheridos a los estndares S.A.A de IBM., totalmente documentados y ajustados a los requerimientos especficos de la organizacin, en una fraccin del tiempo y coste del que se invertira, si se utilizaran herramientas tradicionales.

8.FUTURO DE LAS HERRAMIENTAS CASELas herramientas CASE evolucionan hacia tres tipos de integracin: 1.La integracin de datos permite disponer de herramientas CASE con diferentes estructuras de diccionarios locales para el intercambio de datos.2.La integracin de presentacin confiere a todas las herramientas CASE el mismo aspecto. 3.La integracin de herramientas permite disponer de herramientas CASE capaces de invocar a otra herramienta CASE de forma.

Tema 04:Herramientas CaseQU ES UNA HERRAMIENTA CASE?Se consideran CASE a un conjunto de herramientas relacionadas que soportan todos los aspectos del ciclo de desarrollo del software, incluyendo aquellas que soportan fases especificas del ciclo de vida, como las herramientas de anlisis y diseo, generadores de cdigo y herramientas de testing, y las herramientas que sirven a varias fases del ciclo de vida, como herramientas de manejo de proyectos, administracin de la configuracin, y herramientas de documentacin.

Conjunto de herramientas que tratan de optimizar la tarea de trabajar con sistemas. Los problemas por los que aparecieron las Herramientas CASE son:Recursos insuficientes para desarrollar el nuevo software. Tratar de mejorar la productividad.Problemas en el software existente: mejorar la calidad del software.Altos costos de mantenimiento.

QU SE ESPERA DE UNA CASE?Las herramientas CASE deberan cumplir las siguientes funciones:Manejo de metodologa de ingeniera de software a la medida de la organizacin, eso incluye notaciones grficas y reglas de control.Manejo de grficas para mltiples tipos de modelos (DFD, DER, DTE, etc.)Mdulos de revisin de errores para asegurar la precisin de esos modelos, es decir que sean completos e internamente consistentes.

Comparacin entre modelos diferentes, tanto en la misma fase o entre diferentes fases delciclo de vida para comprobar y analizar los errores, comprobar la consistencia y crear referencias cruzadas de toda la informacin concerniente al sistema.Acceso bajo una red, a todas las herramientas que automatizan el ciclo de vida del proyecto.Control sobre las actualizaciones desde los distintos puestos de trabajo.Facilidades para que el administrador del proyecto efecte el seguimiento del mismo.Estadsticas de productividad y mtrica de software.Simulacin y pruebas automatizadas.Creacin de modelos de software para los datos y las lneas de cdigo.Generacin automtica de lneas de cdigo.Interfaz a diccionarios y bases de datos de otras herramientas CASE.Re ingeniera para sistemas ya existentes.Generacin automtica de la documentacin del sistema.

CUNTOS TIPOS DE CASE HAY?Existen tres tipos de productos CASE:Case de alto nivel:son productos que cubren las primeras fases del ciclo de vida: Planificacin, Anlisis, Diseo. Permiten describir los aspectos fundamentales de un sistema, obtenindose beneficios considerables en la documentacin grfica y en la integracin de funciones y relaciones.

Case de bajo nivel:son productos basados en el uso de la propia maquina a la que se destina la aplicacin y estn orientados a : generacin de bases de datos, generacin de programas, soporte de pruebas. Al estar asociados a una plataforma definida ofrecen mejor capacidad de eleccin.

Case integrado:comprende todos los elementos de CASE superior e inferior, y, por lo tanto debera cubrir todas las fases del ciclo de vida de forma totalmente compatible y coherente. Los beneficios del CASE integrado incluyen:La transferencia fluida de informacin (modelos, programas, documentos, datos) entre herramientas y entre etapas.La reduccin del trabajo requerido para actividades de soporte como la generacin de documentos, el control de calidad, etc.Un aumento en el control de los proyectos que se consigue mediante una mejor planificacin, el control de las actividades y la comunicacin.Mejor coordinacin entre los miembros del equipo de trabajo en grandes proyectos.

CUNDO UNA HERRAMIENTA ES INTEGRADA?Identificamos cinco tipos de integracin:Integracin de plataformas:se refiere a una herramienta con un conjunto comn de servicios proporcionados por el ambiente operativo. Por ejemplo, el ambiente UNIX. En algunos aspectos, esta es la forma de integracin mas baja, porque la integracin no es el objetivo directo de la herramienta, sino que es el resultado de las caractersticas especiales del SO sobre el que la herramienta trabaja.

Integracin de presentacin:se refiere a la definicin de una interfase de usuario consistente entre las diferentes herramientas. Estandarizar las interfases de usuario aumenta la flexibilidad y simplifica la eleccin de las herramientas por parte de los usuarios. Las organizacin intentan lograr desde hace tiempo una integracin en los formularios para usuarios y desarrolladores, a fin de conseguir un vocabulario nico y un contenido de mens similar en todas sus interfases grficas. Reduce el costo y tiempo de entrenamiento.

Integracin de control:se refiere a la habilidad de las herramientas para informar a otras herramientas de sus acciones y recibir requerimientos de otras herramientas. Que en el momento que se defina una accin en una herramienta de anlisis y diseo, se notifique o se acceda a las otras herramientas afectadas. Las organizaciones tienen hace tiempo una forma rudimentaria de integracin de control usando scripts que invocan programas segn el resultado de distintas condiciones.

Integracin de datos:se refiere a la transferencia de informacin entre herramientas y al establecimiento de las relaciones entre datos utilizando diferentes herramientas. Las formas de transferencia son: 1) las herramientas de forma individual permitan un intercambio de interfases y formato. Son fciles de implementar pero no permiten una integracin efectiva de las relaciones entre datos. 2) tener una base comn, con filtros que extraen informacin y la almacena en bases intermedias.

Dependen del mantenimiento de la integracin punto a punto y generan redundancia entre la base central y la auxiliar. 3) que haya una BD centralizada donde todas las herramientas guarden su informacin. La total funcionalidad del repositorio proporciona la capacidad de mantener el contenido semntico de los objetos, lo que permite el trabajo conjunto de varias herramientas.Integracin de procesos:se refiere a la automatizacin de la secuencia de actividades que la organizacin ha definido como componentes del ciclo de vida del desarrollo del software. Se usan mecanismos de integracin de presentacin, control y datos para permitir un alto nivel de integracin de procesos, ya que esta es la fase final de integracin.

QU FUNCIONES DEBE CUMPLIR UN AMBIENTE INTEGRADO?Las herramientas CASE integradas, fueron diseadas para procesarse en un entorno dedicado. Un entorno integrado debe:Suministrar un mecanismo que permita compartir la informacin a todas las herramientas. Las herramientas se deben disear con una estructura de datos y semntica compatibles para que intercambien datos sin necesidad de traduccin.Permitir el acceso simultneo a herramientas. Plataformas multitarea.Reflejar los cambios de un elemento de informacin en todos los elementos relacionados.

Proporcionar un control de versiones y una gestin global de toda la informacin del sistema.Permitir el acceso directo, no secuencial, a todas las herramientas del entorno.Presentar la misma visin consistente de la interfaz hombre-maquina en todas las herramientas.

Permitir la comunicacin entre los integrantes del equipo a travs de la informacin que generan.Realizar mediciones tcnicas y de gestin para mejorar el proceso y el producto.A esto se le debe aadir los servicios de portabilidad para que todos los bloques de la arquitectura CASE se unan adecuadamente.

QU SOFTWARE DE BASE USA UNA CASE INTEGRADA?Son necesarios:Un repositorio, que almacena informacinUn sistema de manejo de objetos, para manejar los cambios en la informacinUn control de herramientas, para coordinar su utilizacinUna interfaz de usuario avanzada, para proporcionar una va consistente entre el usuario y las herramientas contenidas en el entorno.Un sistema operativo multitarea, de manera de poder trabajar con varias herramientas simultneamente.Una arquitectura de red, como un entorno CASE es una red distribuida, los mecanismos bsicos deben poder funcionar en red.En resumen, el software de base ms importante es la Base de datos o repositorio CASE, la red de distribucin de datos asociada y el sistema operativo multitarea.

Repositorio case:es el conjunto de mecanismos y estructuras de datos que permite el almacenamiento en forma inteligente de toda la informacin que concierne al sistema en desarrollo.

DATOS QUE SE ALMACENAN EN UN REPOSITORIO CASE :El problema a resolverInformacin sobre el mbito del problemaLos modelos que solucionan el problemaLas reglas e instrucciones relacionadas con la metodologaLa informacin concerniente a la gestin del proyecto (recursos, presupuesto, calendario, etc.).

SERVICIOS DE UN REPOSITORIO CASELos servicios que debe proporcionar el gestor de BD de un buen repositorio CASE, son de dos tipos, los normales de cualquier sistema de gestin de base de datos y los especficos del entorno CASE.

Los servicios normales son:Almacenamiento no redundanteAcceso de alto nivel: un nico mecanismo de acceso para todas las herramientas.Independencia de los datosControl de transaccionesSeguridadConsulta de los datos y gestin de informesApertura: mecanismo sencillo para importar/exportar datos.Soporte multiusuario.

Las funciones especiales son: Integridad de datos:a) Datos - Herramientas: el modelo de datos debe ser accedido por todas las herramientas del entorno I-CASE;b) Datos - Datos: el modelo de datos debe permitir establecer una gran diversidad de relaciones entre los datos que los componen.Informacin compartidaSeguimiento de la metodologaAlmacenamiento de estructuras sofisticadas de datos. (diagramas, documentos, archivos).

Metadatos:los metadatos son la informacin que la herramienta CASE genera automticamente acerca de los datos con los que trabaja, es decir, datos sobre sus propios datos. Los datos que genera pueden ser:Definiciones de objetos ( de qu tipo son, que representacin grfica tienen, con que otros objetos se relacionan)Relaciones y dependencias entre objetos de distinto nivel logico. Por ej: un proceso en un DFD.Reglas de diseo aplicadas a su propio software, por ej: las distintas formas validas de dibujar y balancear un DFD.

Meta modelo:un meta modelo es un modelo de modelos, es un modelo que define los pasos a seguir para construir otro modelo; en este caso modelos de sistemas de informacin. Es el patrn que rige la generacin y almacenamiento de la informacin del proyecto.

Capacidad de control:permite que cada herramienta pueda notificar al usuario la ocurrencia de sucesos significativos, y solicitarle que solucione ese problema. Es decir, que tenga la capacidad de generar informacin y efectuar controles sobre si misma. Que puedo auto controlarse. Controla que la informacin sea integra.Gestin de enlaces:es la capacidad de identificar y evaluar los efectos de un cambio. Que relacione a todas las herramientas del modelo.Seguimiento de los requisitos:dado un requisito, una necesidad, que la herramienta me permita ver como se refleja en mi sistema. Y tambin saber quien realizo tal requisito.Gestin de la configuracin:configurar lo que la herramienta CASE me brinda. Depende de la gestin de enlaces y realiza el seguimiento entre las distintas fases del proyecto. Puede regenerar automticamente el cdigo destino.Trayectorias de auditora:seguimiento de las tareas efectuadas. Obtener informacin de cuando, porque y quien realizo cada tarea.

QU VENTAJAS Y DESVENTAJAS TIENEN LAS CASE?Se pueden llegar a obtener las siguientes ventajas:Menor tiempo de mantenimientoMayor independencia entre anlisis, diseo y programacinMayor independencia del anlisis y diseo con respecto a un entorno en particular.Trabajar con tareas de mayor nivel que la codificacin pura.Mejora de la calidad del producto de softwareAplicaciones ms productivas para la empresa.

Muchas veces las herramientas CASE no cumplen los objetivos esperados, o simplemente no resultan atractivas para las empresas. Las razones pueden ser muchas, entre ellas:Dificultades para adaptarse al cambio, pues es un cambio cultural, no solo tcnicoEs dificil pasar de un anlisis realizado en solitario a la realizacin del anlisis en colaboracin con los usuarios o con un equipo.Muchas empresas no cumplen o no tienen prcticas de gestin de software organizadas, sin las cuales la automatizacin del proceso de anlisis y diseo suele resultar ineficaz o imposible.A veces se cree que las nuevas herramientas son soluciones mgicas, cuando en realidad el resultado se ve a mediano y largo plazo.Muchos sectores de software estn tan atrasados en el cumplimiento de sus trabajos que no disponen de tiempo para pensar en nuevas polticas de desarrollo.Falsas expectativas creadas por los vendedores que originan desengaos y frustraciones.