Universidad de Panamá Centro Regional Universitario Bocas del Toro Facultad: Informática Electrónica y Comunicación Licenciatura en Informática Para la Gestión Educativa y Empresarial INF (323) Diez Herramienta CASE. Facilitador: Ricardo Smith. Elaborado por: Deuan Vega 1-747-269 Changuinola 11 de septiembre del 2022. Índice Presentación ------------------------------------------------------------------1 Dia -----------------------------------------------------------------------------3 ArgoUML -----------------------------------------------------------------------4 CASE Studio -------------------------------------------------------------------5 Modelio ------------------------------------------------------------------------6 Poseidón -----------------------------------------------------------------------7 EASY CASE ---------------------------------------------------------------------8 Microsoft Project --------------------------------------------------------------9 Racional Rose -----------------------------------------------------------------10 JDeveloper --------------------------------------------------------------------11 System Architect --------------------------------------------------------------12 Conclusión ---------------------------------------------------------------------13 Herramientas CASE. 1. Dia Dia es una aplicación informática de propósito general para la creación de diagramas, creada originalmente por Alexander Larsson y desarrollada como parte del proyecto GNOME. Está concebido de forma modular, con diferentes paquetes de formas para diferentes necesidades. Dia está diseñado como un sustituto de la aplicación comercial Visio de Microsoft. Se puede utilizar para dibujar diferentes tipos de diagramas. Actualmente se incluyen diagramas entidad-relaciónes, diagramas UML, diagramas de flujo, diagramas de redes, diagramas de circuitos eléctricos, etc. Formatos de exportación de DIA • EPS (Encapsulated PostScript) • SVG (Scalable Vector Graphics) • DXF (Autocad’s Drawing Interchange Format) • CGM (Computer Graphics Metafile definido por estándares ISO) • WMF (Windows Meta File) • PNG (Portable Network Graphics) • JPEG (Joint Photographic Experts Group) • VDX (Microsoft’s XML para Visio Drawing) Hablemos de sus ventajas y los inconvenientes de DIA En cuanto a sus ventajas podemos decir que gracias a la multitud de tipos con los que podemos exportar, acerca a que el desarrollar un diagrama con el software sea un sinónimo de interconexión con otros programas de terceros. Si podemos decir algo en torno a sus inconvenientes es básicamente que a pesar de ser multilenguaje sus manuales solo están desarrollados en cuatro idiomas entre los que no se incluye el castellano. Sin embargo, podemos utilizar el propio traductor de Google para subir el fichero PDF y conseguir dar un poco de luz a la traducción del manual. Existen multitud de formas de realizar diagramas, algunas más complicadas que otras, pero lo que sí que podemos decir es que a la hora de tomar la decisión de realizar o no un diagrama debemos observar diversos factores como son la complejidad del proceso y cuánto tiempo nos llevará realizarlo. 2. ArgoUML Es una aplicación de diagramado de UML escrita en Java y publicada bajo la Licencia BSD. Dado que es una aplicación Java, está disponible en cualquier plataforma soportada por Java. ArgoUML no es solo una herramienta de modelado de uso libre; sino también un proyecto de desarrollo de código abierto en que estamos invitados a participar. ArgoUML fue concebido como un entorno y herramienta para utilizar en el análisis y diseño de sistemas de software orientados a objeto. En este sentido es similar a muchas de las herramientas CASE comerciales que son vendidas como herramientas para modelar sistemas software. ArgoUML tiene un número de distinciones muy importantes de muchas de esas herramientas. Al estar desarrollado en Java el programa no depende de ninguna plataforma por esa razón puede instalarse en múltiples sistemas operativos, teniendo como única condición previa la máquina virtual de Java instalada (JDK). Además, tiene soporte para UML 1.4 y proporciona buenas herramientas para dibujar y manipular los diagramas. Como muchas otras herramientas para el análisis de sistemas informáticos de esta potencia, ArgoUML proporciona la generación del código, el cual puede ser utilizado en los siguientes lenguajes: Java, C++, C Sharp (C#) y PHP. Como otro aspecto importante a tener en cuenta los proyectos de esta aplicación pueden exportarse a múltiples formatos gráficos mencionados con anterioridad. ArgoUML maneja los siguientes tipos de diagrama: • Clases • Estados • Casos de Uso • Actividad • Colaboración • Desarrollo • Secuencia Características • Posee soporte para el lenguaje de generación de Código: Java, PHP, Python, C++ y CSharp. • Permite la realización de ingeniería inversa • Los diagramas pueden ser formatos PNG, GIF, JPG, SVG, EPS. exportados a los siguientes 3. CASE Studio CASE Studio es una herramienta profesional con la que podrás diseñar tus propias bases de datos, facilitándote herramientas para la creación de diagramas de relación, modelado de datos y gestión de estructuras. Tiene soporte para trabajar con una amplia variedad de formatos de base de datos (Oracle, SQL, MySQL, PostgreSQL, Access, etc.) y te permite además generar scripts SQL, aplicar procesos de retroingeniería (reverse engineering) a tus bases de datos, usar plantillas de diseño personalizables y crear detallados informes en HTML y RTF. Características • Crea diagrama de entidad – relación de generación automática de SQL (DDL). • Documentación de flujo de datos. • Editor de plantillas • Exportación de los diagramas en formato de versión XML administrador. Ventajas • • • • • • Establece un puente entre la teoría y la práctica. Potencia la enseñanza activa ya que permite trabajar aspectos técnicos y metodológicos. Fomenta el desarrollo del juicio crítico: causas históricas Permite la compresión de las posiciones diferentes ante un conflicto o un problema Familiariza con representaciones simbólicas Si son trabajados correctamente, favorecen la sistematización de procedimientos Desventajas • • • • Es difícil que un microcosmos suministre el escenario general o explicación cultural. Puede confundir si se refuerza lo anecdótico o lo excesivamente regular. Abordan aspectos parciales de la realidad social que deben ser completados con otras unidades Son difíciles de construir. 4. Modelio Modelio es un entorno de modelado de código abierto ( UML2 , BPMN2 , ...). Basado en un historial de 20 años de productos comerciales de alta gama, Modelio ofrece una amplia gama de funcionalidades basadas en estándares para desarrolladores de software, analistas, diseñadores, arquitectos comerciales y arquitectos de sistemas. Principales características • • • • • • • Modelador UML Soporte BPMN integrado con UML Generador de código Java Importación/exportación XMI Publicación de modelos HTML Sistema de extensión Soporte de lenguaje de secuencias de comandos (Jython) Usabilidad • Interfaz gráfica sencilla, fácil de aprender a utilizar. • Rápidamente puedes empezar a modelar. Estándares soportados Modelio Soporta varios estándares de modelado y documentación de sistemas, los cuales se indican a continuación: • UML: Lenguaje Unificado de Modelado. • BMPN: Estándar para el modelado de procesos de negocio. • XMI: Estándar utilizado para el intercambio de metamodelos usando XML. • SysML: Lenguaje de especificación de sistemas. • UTP (Perfil de Pruebas UML): su objetivo es capturar toda la información necesaria pararealizar pruebas de caja negra. • SoaML: Lenguaje de modelado de arquitectura orientada a servicios. 5. Poseidón Poseidón for UML, herramienta CASE, desarrollada en Java, es multiplataforma para sistemas operativos (Windows, Linux, etc), su origen proviene sobre la base de ArgoUML, presenta diferentes ediciones. Características de Poseidón • • • • • • • • • • Soporta diagramas UML. Opciones avanzadas de impresión. Soporta gráficos en la mayoría de los formatos. Varios idiomas. Generación de código para Java y exportación como HTML. Fácil de instalar y actualizar. Compatibilidad entre ediciones. Capacidades ampliables a través de plug-ins, es posible cargarlos en tiempo de ejecución Generación de documentación en HTML y formato Word 2003. Soporta los formatos gráficos gif, ps, eps, wmf, jpg y png. Funcionalidades • Se basa en una plataforma por DSL. • Es una gran herramienta UML con un conjunto completo de diagramas (clases, paquetes, casos de uso, estado, componentes, actividades y diagramas de secuencia). • Interfaz de usuario excelente. • Escalabilidad, rendimiento, fiabilidad y personalización. • Se centra en la productividad del modelador. Ventajas • Herramienta hecha completamente en Java, por lo que es independiente de la plataforma. • Interfaz de usuario muy bien diseñada. • Fácil de aprender a usar e intuitiva. 6. EASY CASE Conjunto de herramientas y metodologías que prestan soporte a un enfoque de ingeniería en el desarrollo de software o en alguna o en todas las fases de este proceso. EasyCASe permite la modelización de procesos y datos, y el análisis y la generación de esquemas de bases de datos para xBASE y SQL. Uno de los aspectos más reseñables de EasyCASE es que permite realizar el análisis y el diseño en un PC y exportar los esquemas de la base de datos a otras máquinas de mayor productividad. También posibilita realizar ingeniería inversa con tablas dBASE, uniéndolas con entidades ERD y estructuras de registros y elementos. La tecnología CASE supone la “informatización de la informática” o “la automatización del desarrollo del software” Objetivos: • • • • • • • Permitir la aplicación práctica de metodologías estructuradas Facilitar la realización de prototipos y el desarrollo conjunto de aplicaciones Simplificar el mantenimiento de los programas Mejorar y estandarizar la documentación Aumentar la portabilidad de las aplicaciones Facilitar la reutilización de componentes del software Permitir un desarrollo y un refinamiento visual de las aplicaciones. Elementos de una herramienta CASE • • • • • • Repositorio (Diccionario): Donde se almacenan los elementos creados por la herramienta. Metamodelo: Marco para la definición de las técnicas y metodologías soportadas por la herramienta. Generador de Informes: Herramienta que permite obtener la documentación sobre el sistema que se está desarrollando. Carga/Descarga de datos: Para intercambiar datos del repositorio con otros sistemas. Comprobación de errores: Analizar la exactitud, integridad y consistencia de los esquemas. Interfaz de usuario: Soporte gráfico para las interacciones del usuario. 7. Microsoft Project Microsoft Project es un conjunto de herramientas para gestionar Proyectos y Portafolios (PPM) por sus siglas en inglés, que pueden usarse como Software As a Service (en la nube) o con instalación On Premises. Microsoft Project es una herramienta de Software que apoya los procesos de gestión de proyectos de manera colaborativa. Mediante el uso de esta herramienta puedes generar, por ejemplo, un diagrama de Gantt que te permite visualizar las actividades en forma de barras en un periodo de tiempo determinado, pudiendo plasmar las necesidades de tu cliente y del proyecto en la programación, tales como horas hombre, duración, costos, entregables, actividades, recursos, calendarios, etc. Esta herramienta te permitirá dar seguimiento a los proyectos de manera colaborativa y generar reportes de avance, Microsoft Project contiene varios reportes predeterminados, pero también permite personalizar reportes y vistas con el objetivo de cubrir las necesidades de información de tus stakeholders. Características destacadas de Microsoft Project Este software dispone de herramientas de gestión de proyectos que centralizan y agilizan los procesos. Planificación del proyecto: El inicio del proyecto, con la planificación y la ruta establecida de etapas claramente establecidas, es clave para la gestión. Plantillas personalizables integrada: Microsoft Project integra plantillas que permiten focalizar la atención en los contenidos y no en los formatos. Control de recursos y cálculo de costos: Este programa de gestión de proyectos facilita el control de los recursos asignados a cada tarea y a cada persona. Informes en tiempo real: Permite compartir informes que incluyen la evolución del proyecto y la situación financiera, en formato texto y en gráficos. Resumen de situación con escalas diversas de tiempo: Con esta función, Microsoft Project permite al encargado del proyecto centralizar la información de tareas realizadas y pendientes, en relación al calendario establecido. 8. Racional 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 • Manipular Sus características principales: • • • • • • • • • • No es gratuito, se debe hacer un previo pago para poder adquirir el producto. La ingeniería de código (directa e inversa) es posible para ANSI C++, Visual C++, Visual Basic 6, Java, J2EE/EJB, CORBA, Ada 83, Ada 95, Bases de datos: DB2, Oracle, SQL 92, SQL Server, Sybase, Aplicaciones WEB. Solamente Ingeniería reversa para COM. Rational Rose habilita asistentes para crear clases y provee plantillas de código que pueden aumentar significativamente la cantidad de código fuente generado. Adicionalmente, se pueden aplicar los patrones de diseño, Racional Rose ha provisto 20 de los patrones de diseño GOF para Java. Admite la integración con otras herramientas de desarrollo (IDEs). Requerimientos : Windows 2000 Professional, Service Pack 4 Windows XP Professional, Service Pack 2 Windows 2000 and 2003 Server and Advanced Server, Service Pack 3 and 4 Windows Vista 9. JDeveloper Este magnífico entorno integrado desarrollado por Oracle trabaja con la ingeniería inversa, es decir primero se crea él código y después el diagrama. Es un software propietario pero gratuito desde 2005. Las primeras versiones de 1998 estaban basadas en el entorno JBuilder de Borland, pero desde la versión 9i de 2001 está basado en Java, no estando ya relacionado con el código anterior de JBuilder. Sus características principales: • • • Netamente desarrollado para Java. Posee diagrama de clases (UML). Funciona en los siguientes sistemas operativos: Windows, Linux, Mac OSX. Con JDeveloper, Oracle se ha propuesto simplificar el desarrollo de aplicaciones centrándose en proporcionar un enfoque visual y declarativo para el desarrollo de aplicaciones, además de crear un entorno de codificación avanzado. Oracle JDeveloper se integra con Oracle Application Development Framework ( Oracle ADF ), un marco integral basado en Java EE que simplifica aún más el desarrollo de aplicaciones. Ventajas • • • • • Genera código de forma semiautomática Uso de HTML Aplicaciones XML Manejo de base de datos Creación de interfases visuales 10. System Architect System Architect 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. System Architect es considerado un Upper Case, que puede ser integrado a la mayoría de los generadores de código. Traduce modelos de entidades, a partir de la enciclopedia, en esquemas para Sybase, DB2, Oracle, Ingress, SQL Server, RDB, XDB, Progress, Paradox, SQL Base, AS400, Interbase, OS/2, DBMS, Dbase 111, Informix, entre otros. Genera también Windows DDL y definiciones de datos para lenguaje C/C++. Posibilita a través de ODBC, la creación de bases de datos a partir del modelo de entidades, para los diversos manejadores de bases de datos arriba mencionados. Posee un módulo específico para Ingeniería Reversa desde las Bases de Datos SQL más populares, incluyendo Sybase, DB2, Infonmix, Oracle y SQL Server (DLL), además de diálogos y menús desde Windows. System Architect posee múltiples metodologías para diseño y análisis, incluyendo: Análisis Estructurado en los modelos De Marco/Yourdon y Gane/Sarson, análisis de tiempo real en el modelo Ward & Mellor; análisis esencial de sistemas; análisis orientado a objetos en los modelos UML, Booch, Coad/Yourdon, Rumbaugh, Shaler/Mellor; Diagrama de entidad – relación en los modelos Peter Chen, James Martin, Bachman o Booch, Gráfico de Estructuras, Diagramas de Descomposición, Planeamiento Estratégico de informaciones, entre otras. Es una herramienta creada específicamente para la arquitectura "Cliente/Servidor", por eso posee control total de versiones, y de acceso, así como la administración completa de múltiples equipos de desarrollo. Conclusión Actualmente, la tendencia en el desarrollo de software está enfocada hacia las microcomputadoras como plataformas de ingeniería de software, que se interconectan mediante redes para que puedan comunicarse de forma efectiva. Es por estos que existen diversas herramientas case, Pero el entorno CASE, en sí mismo, necesita otros componentes.