MAGIC DRAW UML José Ignacio Colmenero González Carlos Pérez Herrero José Luis Bravo Sánchez Índice z Herramientas CASE: – – – – – z Introducción. Qué son. Historia. Clasificación. Componentes y funcionalidades. UML: – – – Introducción. Modelos. Elementos comunes: z z Notas. Dependencias. 1 Índice – Diagramas de estructura estática: z z z z z – Diagramas de casos de uso: z z z – Elementos. Actores. Casos de uso. Diagramas de interacción: z z – Clases. Objetos. Asociaciones. Herencia. Elementos derivados. Secuencia. Colaboración. Diagramas de estado. Índice z MagicDrawUML: – – – – Descripción. Características. Ediciones disponibles. Team Work Server: z z z – z z Definición. Funciones. Conclusiones. Caso práctico. Conclusiones. Dudas 2 Herramientas CASE z Introducción. – – Son la mejor base para el proceso de análisis y desarrollo de software. Significado de la sigla CASE: z z z z Computer Aided Assisted Automatec Software Systems Engineering Herramientas CASE z Qué son: – – Conjunto de programas y ayudas que dan asistencia a los analistas, ingenieros de software y desarrolladores, durante todos los pasos del ciclo de vida de desarrollo de un software. Métodos, utilidades y técnicas que facilitan el mejoramiento del ciclo de vida del desarrollo de sistemas de información, completamente o en alguna de sus fases. 3 Herramientas CASE z Historia: – – – – Se iniciaron con un procesador de palabras. Años 70: técnicas gráficas y diagramas de flujo de datos. 1985: las herramientas CASE se volvieron realmente importantes en el proceso de desarrollo de software. Años 90: herramientas CASE alcanzaron su techo. Herramientas CASE z Clasificación: – – – – – Por las plataformas que soportan. Por las fases del ciclo de vida del desarrollo de sistemas que abarca. Por la arquitectura de las aplicaciones que produce. Por su funcionalidad. Lo más común: clasificarlas por las fases del ciclo de vida del desarrollo de sistemas que abarca. z z z Upper CASE. Middle CASE. Lower CASE. 4 Herramientas CASE z Componentes y funcionalidades: – – – – – Repositorio. Módulos de diagramación y modelación. Herramienta de prototipado. Generador de código. Módulo generador de documentación. UML z Introducción. – – – UML (Unified Modeling Language). Posibilitar el intercambio de modelos entre las distintas herramientas CASE. UML no define un proceso de desarrollo específico, tan solo se trata de una notación. 5 UML z Modelos: – – – – – Diagramas de estructura estática. Diagramas de casos de uso. Diagramas de secuencia. Diagramas de colaboración. Diagramas de estados. UML z Elementos comunes a todos los diagramas. – Notas: z – Dependencias: z z Añadir comentarios a un diagrama. Relación de dependencia entre dos elementos. Diagramas de estructura estática. – – Representar modelos conceptuales. Representar diagramas de clases de diseño. 6 UML – Clases: z z – Objetos: z – Se representade la misma forma que una clase. Asociaciones: z – Caja subdividida en tres partes. Puede representarse de forma esquemática. Las asociaciones entre dos clases se representan mediante una línea que las une. Herencia: z Se representa mediante un triángulo en el extremo de la relación que corresponde a la clase más general o clase “padre”. UML – Elementos derivados: z z Aquel cuyo valor se puede calcular a partir de otros elementos presentes en el modelo. Diagramas de casos de uso: – – Relación entre los actores y los casos de uso del sistema. Elementos: z z z Actores. Casos de uso. Relaciones entre casos de uso. 7 UML z Diagramas de interacción. – – Se muestra un patrón de interacción entre objetos. Diagramas de secuencia. z – Muestra una interacción ordenada según la secuencia temporal de eventos. Diagramas de colaboración. z Muestra una interacción organizada basándose en los objetos que toman parte en la interacción y los enlaces entre los mismos. UML z Diagramas de estados: – Muestra la secuencia de estados por los que pasa bien un caso de uso, bien un objeto a lo largo de su vida, o bien todo el sistema. 8 Descripción z z z Herramienta CASE. Fácil e intuitiva. Flexibilidad. Características z z z Interfaz elegante e intuitivo y la mayor parte de las opciones accesibles con un solo click. Ayudas en el diseño con autocompletación y corrección automática en tiempo real. Permite visualizar nuestro proyecto de diferentes formas. 9 Características z z z Posible derivación de modelos UML a través de códigos fuente escritos anteriormente. Generación de código fuente en diferentes lenguajes partiendo de un modelo. Pudiendo integrarse en los IDE’s más habituales. Posibilita la ampliación del del UML, al UML 2.0. Características z z z z Facilidad y rapidez para el cambio del dominio del modelado. Generador automáticos de informes. Desarrollo colaborativo directamente con la herramienta a través del Team Work Server. Disponible para un gran numero de plataformas y sistemas operativos. 10 Ediciones existentes Magic Draw Reader Community Personal Standard Profesional Entrerprise Ediciones existentes z Reader. – – – Nos permite la visualización e impresión de proyectos. Gratuita. Destinada para poder compartir ficheros. 11 Ediciones existentes z Community. – – – Destinada para desarrolladores que creen proyectos no comerciales. Disponibles pocas funcionalidades y con restricciones. Gratuita. Ediciones existentes z Personal. – Disponibles todas las funcionalidades. z z – Soporte de UML 2.0. Extensibilidad. Destinada para el uso individual, no contiene Team Work Server. 12 Ediciones existentes z Standard. – A todas las funcionalidades de la versión Personal añade: z z Integración con IDE’s. Soporte para el desarrollo colaborativo. Ediciones existentes z Profesional. – Incorpora soporte de generación de código e ingenieria inversa para lenguajes como: z z z Java C++ C# 13 Ediciones existentes z Enterprise – La versión más avanzada de Magic Draw, algunas de las características que lo hacen especial son: z z z Cualquier modelado. Recuperación de estructuras mediante JDBC. Producción de modelos personalizados o especificos como XML, DDL… Team Work Server. Definición z z Software que permite trabajar a más de un desarrollador sobre el mismo proyecto en un mismo instante. El modelo está almacenado en un equipo servidor y los desarrolladores pueden consultar y actualizar la información. 14 Team Work Server. Funciones z z Flexibilidad de ubicación, pudiendo obtener el proyecto a través de internet, no siendo necesaria la conexión permanente. Facilidad para tener siempre una versión reciente del proyecto y unir las partes. Team Work Server. Funciones z Facilidades de comunicación: – – Permite la lectura del fichero log en el cuál están descritas los cambios y transformaciones que ha sufrido el proyecto. Intercambio de mensajes en tiempo real entre los desarrolladores. 15 Team Work Server. Funciones z La seguridad está asegurada en todo momento. – – – Control de admisión. Existen diferentes tipos de integrantes, cada uno con unos privilegios concretos. Backup. Team Work Server. Conclusiones z z Aumento de rendimiento para el desarrollo de proyectos grandes, en el que están involucrados varios desarrolladores. Al estar integrado en la herramienta, nos ahorra otros software de comparición de escritorio ó necesidad de emplazamiento físico común. 16 MagicDraw UML: Diagramas Diagrama Clases 17 D. Clases: Generación Informe D. Clases: Generación Informe Tools-> Report… 18 D.Clases : Generación de Código D.Clases : Generación de Código 19 MagicDraw UML : Ingeniería Inversa 20 MagicDraw UML : Asistentes 21