UNIVERSIDAD NACIONAL EXPERIMENTAL POLITECNICA DE LA FUERZA ARMADA INTEGRANTES: Yaelis Bellorin Edward Monroy Gabriel Orta Magluis Hernndez Lucas Gonzalez PORFESOR: ING. Alexis Fermin Las Herramientas CASE En ingles (Computer Aided Software Engineering), que significa (Ingeniera de Software Asistida por Computadora). Aplicaciones informticas destinadas a aumentar la productividad en el desarrollo de software. Reducen el costo de las mismas en trminos de tiempo y de dinero. Estas herramientas pueden ayudar en todos los aspectos del ciclo de vida de desarrollo del software. La primera herramienta CASE fue Excelerator, sali a la luz en el ao 1984 y trabajaba bajo una plataforma PC. Objetivos Mejorar la productividad en el. Aumentar la calidad del software. Reducir el tiempo y costo de desarrollo y mantenimiento de los sistemas informticos. Mejorar la planificacin de un proyecto Objetivos Aumentar la biblioteca de conocimiento informtico de una empresa ayudando a la bsqueda de soluciones para los requisitos. Automatizar el desarrollo del software, la documentacin, la generacin de cdigo, las pruebas de errores y la gestin del proyecto. Ayuda a la reutilizacin del software, portabilidad y estandarizacin de la documentacin. Gestin global en todas las fases de desarrollo de software con una misma herramienta. Facilitar el uso de las distintas metodologas propias de la ingeniera del software. Tipos Aunque no es fcil y no existe una forma nica de clasificarlas, las herramientas CASE se pueden clasificar teniendo en cuenta los siguientes parmetros:
Las fases del ciclo de vida del desarrollo de sistemas que cubren. Las plataformas que soportan. La arquitectura de las aplicaciones que producen. Su funcionalidad . Tipos 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 Tipos Las herramientas CASE, en funcin de las fases del ciclo de vida abarcadas, se pueden agrupar de la forma siguiente:
Herramientas integradas, I-CASE (CASE integrado) Abarcan todas las fases del ciclo de vida del desarrollo de sistemas.
Son llamadas tambin CASE workbench.
Herramientas de alto nivel, U-CASE (CASE superior) Orientadas a la automatizacin y soporte de las actividades desarrolladas durante las primeras fases del desarrollo: anlisis y diseo. Herramientas de bajo nivel, L-CASE (CASE inferior) dirigidas a las ltimas fases del desarrollo: construccin e implantacin. Juegos de herramientas o toolkits tipo ms simple de herramientas CASE. Automatizan una fase dentro del ciclo de vida. herramientas de reingeniera, orientadas a la fase de mantenimiento.
Tipos Herramien tas de anlisis y diseo. Herramientas de planificacin de sistemas de gestin. Herramienta s de programaci n Herramientas de programacin Herramien tas de mantenimi ento Herramientas de gestin de prototipos. Entre otros Beneficios de las Herramientas CASE 1- Facilidad para la revisin de aplicaciones. 2- Soporte para el desarrollo de prototipos de sistemas. 3- Generacin de cdigo. 4- Mejora en la habilidad para satisfacer los requerimientos del usuario. 5- Soporte interactivo para el proceso de desarrollo. Beneficios de las Herramientas CASE Facilidad para la revisin de aplicaciones Cuando las aplicaciones se implementan, se emplean por mucho tiempo. Beneficio substancial para las organizaciones al facilitar la revisin de las aplicaciones. Soporte para el desarrollo de prototipos de sistemas Se desarrollan diseos para pantallas con la finalidad de mostrar, encabezados y mensajes. El desarrollo de prototipos puede producir un sistema que funcione. Generacin de cdigo La disminucin del tiempo necesario para preparar un programa. Las herramientas que existen en el presente es capaz de generar un cdigo completo en los dominios. Mejora en la habilidad para satisfacer los requerimientos del usuario Es bien conocida la importancia de satisfacer los requerimientos del usuario, ya que esto guarda relacin con el xito del sistema. Parece ser que las herramientas CASE disminuyen el tiempo de desarrollo Soporte interactivo para el proceso de desarrollo La experiencia ha demostrado que el desarrollo de sistemas es un proceso interactivo. CASE soportan pasos interactivos al eliminar el tedio manual de dibujar diagramas, elaborar catlogos y clasificar. Beneficios de las Herramientas CASE DEBILIDADES DE LAS HERRAMIENTAS CASE Las herramientas CASE tienen puntos dbiles significativos, que van desde la confiabilidad en los mtodos estructurados hasta su alcance limitado, los cuales amenazan con minar los beneficios potenciales descritos con anterioridad.
Confiabilidad en los mtodos estructurados Falta de niveles estndar para el soporte de la metodologa Las herramientas CASE que existen en el presente, tienen una de las siguientes caractersticas:
DEBILIDADES DE LAS HERRAMIENTAS CASE Son independientes de la metodologa. Permiten que los usuarios definan sus propias metodologas. Soportan una metodologa. Soportan las metodologas ms diseminadas. Herramienta Individual Son las herramientas que se utilizan exclusivamente para una fase del desarrollo de software. No tienen manera de recibir informacin, solo las que proporciona el usuario cuando la utiliza.
AE DOO La figura nos muestra cmo podramos representar dos herramientas individuales, sin conexin ni relacin la una con la otra.
Fig. Herramientas Individuales Intercambio de Datos Este se realiza cuando las herramientas guardan su informacin en ciertos formatos que podran ser ledos por otras herramientas CASE que acepten dicho formato. El intercambio de datos se puede ver con una flecha, ya sea unidireccional o bidireccional. Fig. Intercambio de Datos Puente Estos se crean cuando hay intercambios de datos especficos para herramientas que se complementan por cubrir fases consecutivas en el desarrollo de software.
Tambin se utilizan los puentes para todo un grupo o serie de herramientas, en lo que se denomina un consorcio de estndares. Fig. Puente Fig. Consorcio Fuente nica Esta es una suite (Conjunto de programas) de aplicaciones CASE de un mismo proveedor. el traspaso de informacin suele ser transparente entre las herramientas. Desafortunadamente solamente pueden interactuar entre ellas y no es posible aadir otra herramienta para complementar las necesidades especficas del usuario. Podemos apreciar una representacin de una suite de herramientas CASE de fuente nica . Fig. Fuente nica EAPI El Entorno de Apoyo a Proyectos Integrado. Se construye mediante estndares de traspaso de informacin y metadatos. Permite aadir herramientas que se ajusten a los estndares, aunque sean de distintos proveedores.
provee una simplificacin en la transferencia de datos entre herramientas, con una consecuente mejora en el proceso del flujo de informacin. Fig. EAPI Arquitectura del marco de referencia de integracin Fig. Modelo de Referencia de Integracin REPOSITORIO CASE Conjunto de mecanismos y estructuras de datos. Permite el almacenamiento en forma inteligente de toda la informacin. DATOS QUE SE ALMACENAN EN UN REPOSITORIO CASE:
El problema a resolver Informacin sobre el mbito del problema Los modelos que solucionan el problema Las reglas e instrucciones relacionadas con la metodologa La informacin concerniente a la gestin del proyecto (recursos, presupuesto, calendario, etc.) SERVICIOS DE UN REPOSITORIO CASE Los servicios que debe proporcionar el gestor de BD de un buen repositorio CASE. son de dos tipos, los normales y los especficos.
Los servicios normales son:
Almacenamiento no redundante Acceso de alto nivel: un nico mecanismo de acceso para todas las herramientas. Independencia de los datos Control de transacciones Seguridad Consulta de los datos y gestin de informes Apertura: mecanismo sencillo para importar/exportar datos. Soporte multiusuario Las funciones especiales son: Integridad de datos: a) Datos - Herramientas b) Datos - Datos Apoyo a la construccin de sistema Nos muestra un resultado del mismo, un nuevo producto software, se presenta en forma de herramienta CASE. Sirve de apoyo para la generacin de diagramas de flujo de datos siguiendo la metodologa Mtrica versin 3. La tcnica de los DFD, sirve para representar grficamente los lmites de un sistema y su lgica de procesos, estableciendo las funciones que hay que desarrollar. La aplicacin se ofrece que como una herramienta de software libre, por lo que puede ser usado, copiado, estudiado, modificado y redistribuido libremente. Esta aplicacin, desarrollada para la uc3m, tendr como nombre CASE-FREE 2008.
GESTION DE CAMBIOS El objetivo primordial es que se realicen e implementen adecuadamente todos los cambios necesarios en la infraestructura y servicios, garantizando el seguimiento de procedimientos estndar. G E S T I O N
D E
C A M B I O S
GESTION DE CAMBIOS Principales beneficios de una correcta gestin de cambios: 1- Se reduce el numero de incidentes y problemas potencialmente asociados al todo cambio. 2- Se reduce el numero de Back-Outs necesarios. 3- Los cambios son mejor aceptado y se evitan Tendencia Inmovilista. 4- Se evalan los verdaderos costos asociados al cambio y por lo tanto es mas sencillo valorar el retorno real a la inversin. 5- Se desarrollan procedimientos de cambio estndar que permiten la rpida actualizacin de sistemas no crticos. CASE GESTION DE CAMBIOS 1-Combina el poder de la ultima especificacin UML 2.1. 2- alto rendimiento. 3- interface intuitiva. 4- Equipo completo de desarrollo e implementacin.
1- Herramienta basada en web de seguimiento de errores.
2- Permite organizar en mltiples formas los defectos de software.
3- permite categorizar los defectos de software y asignarle versiones para su solucin. 1- Popular sistema libre basado en el control de errores web. 2- Esta escrito en PHP y trabaja con MySQL, MS SQL y base de datos PostgreSQL. CONTROL DE VERSIONES Una version es el estado en el que se encuentra dicho producto en un momento dado de su desarrollo o modificacin. Se llama (control de versiones) a la gestin de diversos cambios que se realizan sobres los elementos de algn producto o configuracin.
Estos sistemas facilitan: 1- administracin de distintas versiones de cada producto en desarrollo. 2- posibles especializaciones. Se realizan principalmente en industrias informticas, para controlar las distintas versiones de cdigo fuente CONTROL DE VERSIONES Mecanismos de almacenaje de elementos Posibilidad de realizar cambios sobre los elementos almacenados Registro historio de las acciones realizadas con cada elemento Un sistema de control de versiones debe proporcionar. GRACIAS POR SU ATENCIN. Slo podemos ver poco del futuro, pero lo suficiente para darnos cuenta de que hay mucho que hacer. Alan Turing (1912-1954) Lgico y matemtico britnico.