Curso UML Emilio Avilés Ávila http://www.techmi.es
Workshop (20 horas) Workshop UML y Proceso Unificad para empresas y profesionales
Temario Introducción Diagramas   Casos de Uso Diagramas de Clases Diagramas de Interacción Diagramas de Comportamiento Diagramas de implementación Otros diagramas Proceso Unificado
Tema 2 Diagramas
Objetivos Introducción Diagramas   Casos de Uso Diagramas de Clases Diagramas de Interacción Diagramas de Comportamiento Diagramas de implementación Otros diagramas Proceso Unificado Identificar el uso adecuado de los diagramas de implementación Elementos UML de los diagramas de Componentes Diferencia entre componente y despliegue Elementos UML de un diagrama de despliegue Ejemplos.
Tema 2.5 Diagramas de implementación
2.5 – Diagramas de Implementación Introducción Un diagrama de implementación muestra:  Las dependencias entre las partes de código del sistema (diagrama de componentes) La estructura del sistema en ejecución (diagrama de despliegue):  Los  diagramas de componentes  se utilizan para modelar la vista de implementación estática de un sistema. Los  diagramas de despliegue  se utilizan para modelar la vista de despliegue estática.
Tema 2.5.a Otros Diagramas Diagrama de componentes
2.5 – Diagramas de Implementación: Componentes Términos y Conceptos Componente. Def.  Unidad autónoma  que forma parte del sistema y proporciona la implementaron de un conjunto de interfaces. Componentes y clases Las  clases  representan  abstracciones lógicas  y las componentes  abstracciones físicas .  Los  componentes  puede vivir en  nodos  y las clases NO. Las  clases  contienen atributos y operaciones. Los  componentes   sólo  contienen  operaciones  alcanzables por sus interfaces. Componentes e interfaces El uso de interfaces para unir componentes es muy común. Un componente puede exportar o importar interfaces.
2.5 – Diagramas de Implementación: Componentes Términos y Conceptos (II) Un componente es fácilmente reemplazable. Es físico reemplazable parte del sistema proporciona un conjunto de interfaces Tipos de componentes Componentes de despliegue : Necesarios para formar un sistema ejecutable. (DLLs,EXEs) Componentes de productos de trabajo : Generados del proceso de desarrollo. Componentes de ejecución : Consecuencia de la ejecución del sistema.
2.5 – Diagramas de Implementación: Componentes Términos y Conceptos (III) Los componentes se pueden agrupar en paquetes Estereotipos executable library table file document
2.5 – Diagramas de Implementación: Componentes Notación Los componentes se representan gráficamente como a continuación:
2.5 – Diagramas de Implementación: Componentes Componentes: Elementos Requisitos Indicar sus obligaciones contractuales (servicios proveen en el modelo)  Ayudan a documentar el comportamiento funcional de los elementos de software. Restricciones Indican el entorno en el que operan.  Escenarios Descripciones textuales y procedimentales de las acciones de un objeto a lo largo del tiempo y describen la forma en la que un componente trabaja. Se pueden crear múltiples escenarios para describir tanto el camino básico (una ejecución perfecta) como las excepciones, errores y otras condiciones. Trazabilidad Componente puede implementar otro elemento del modelo (por ejemplo un caso de uso) Un componente puede ser implementado por otro elemento (por ejemplo un paquete de clases).
2.5 – Diagramas de Implementación: Componentes Diagrama de Componentes Se utilizan para modelar la vista (lógica) de implementación estática de un sistema: para modelar código fuente para modelar versiones ejecutables para modelar bases de datos físicas para modelar sistemas adaptables Es un  tipo especial de diagrama de clases  que se centra en los componentes de un sistema. Formado por: Componentes. Dependencia de  Interfaces. Comunicaciones. relaciones  de dependencia, generalización, asociación y realización.
2.5 – Diagramas de Implementación: Componentes Diagrama de Componentes Interfaces: Pueden exponer interfaces Son puntos visibles de entrada o los servicios que un componente ofrece
2.5 – Diagramas de Implementación: Componentes Ejemplo Diagrama Componentes
2.5 – Diagramas de Implementación: Componentes Estereotipos en Componentes Executable : Especifica un componente que se puede ejecutar en un nodo.  Library : Especifica una biblioteca de objetos estática o dinámica.  Table : Especifica un componente que representa una tabla de una base de datos.  File : Especifica un componente que representa un documento que contiene código fuente o datos.  Document : Especifica un componente que representa un documento.
2.5 – Diagramas de Implementación: Componentes Consideraciones y usos Muestran la organización y dependencias lógica entre componentes. Se deben tener en consideración requisitos: Facilidad de desarrollo. Gestión del Software. Reutilización. Restricciones impuestas por los lenguajes de programación. Herramientas usadas para el desarrollo.
2.5 – Diagramas de Implementación: Componentes Componentes en Despliegue En los diagramas de despliegue pueden mostrarse las  asociaciones  existentes entre los  nodos  y los  componentes .
2.5 – Diagramas de Implementación: Componentes Componentes y Nodos Un  diagrama de despliegue  muestra el despliegue físico del sistema en un ambiente de producción (o de prueba).  Muestra  dónde  se ubican los componentes, en qué servidores, máquinas o hardware. Puede representar los enlaces de redes, el ancho de banda de la LAN,
2.5 - Diagramas de Implementación: Componentes Ejercicio práctico Modelar el diagrama de componentes para proveer una vista conceptual/lógica de la construcción de un sistema: Servidor Seguridad de tienda de libros online Servidor Web Firewall Paginas ASP ….  Suerte!!!
2.5 – Diagramas de Implementación: Componentes Solución
2.5 - Diagramas de Implementación: Componentes Ejercicio práctico Modelar el diagrama de componentes para un software de seguridad con los siguientes elementos: Autoridad certificadora (Certificate Authority) Navegador (Browser) Servidor Web Otros elementos (Firewall, etc..) … .  Suerte!!!
2.5 – Diagramas de Implementación: Componentes Solución
Tema 2.5.b Diagramas de implementación Diagrama de DESPLIEGUE
2.5 – Diagramas de Implementación: Despliegue Introducción Representa la  arquitectura de ejecución de los sistemas .  Muestra artefactos del sistema como  nodos , los cuales son  conectados  mediante caminos de comunicación para crear  redes  de complejidad arbitraria.  Los nodos son definidos de forma anidada, representando tanto dispositivos  hardware  como entornos de ejecución  software . También conocido como  modelo físico.
2.5 – Diagramas de Implementación: Despliegue Nodos Un nodo representa un tipo de  recurso computacional  sobre el que se pueden  desplegar  artefactos para su ejecución. Dos posibles estereotipos: Dispositivos hardware : como un ordenador, un procesador, un teléfono móvil, etc. Entornos de ejecución : sistemas software que albergan o contienen el software desarrollado, como sistemas operativos, servidores y clientes Web, etc. Un nodo puede, a su vez, albergar otros nodos, en una estructura anidada.
2.5 – Diagramas de Implementación: Despliegue Nodos: Notación
2.5 – Diagramas de Implementación: Despliegue Relaciones entre nodos Las asociaciones entre nodos permiten modelar: Un canal de comunicación existente entre nodos y el tipo. La cardinalidad de la relación.
2.5 – Diagramas de Implementación: Despliegue Artefactos Representan la  especificación de un elemento  de implementación concreto y real: generalmente archivos (ejecutables, de datos, de configuración, HTML, documentos, resultados del proceso de desarrollo, …). tablas de la base de datos. Los  artefactos  se ‘despliegan’ en los nodos, indicando que recurso computacional los va a albergar y, en su caso, ejecutar.
2.5 – Diagramas de Implementación: Despliegue Diagramas de despliegue Muestra las  relaciones físicas  entre los componentes  hardware  y  software  en el sistema final así como su configuración. Formados por  instancias  de  componentes software  que  representan manifestaciones de código en tiempo de ejecución . Representación : grafo de nodos unidos por conexiones de comunicación ‘ Diagramas de clases que se ocupan de modelar los nodos del sistema’
2.5 – Diagramas de Implementación: Despliegue Diagrama de despliegue:  Usos Aunque UML no es un lenguaje para especificar hardware, permite modelar muchos de estos aspectos. Suficiente para que: Un  ingeniero software  especifique la plataforma de ejecución del software Un  ingeniero sistemas  maneje la frontera entre el software y hardware.
2.5 – Diagramas de Implementación: Despliegue Diagrama de despliegue:  Usos Sistemas empotrados :  Colección de hardware con gran cantidad de software que controla los dispositivos. Sistemas cliente-servidor: Conectividad de red de los clientes sobre los servidores y distribución física de nodos Sistemas distribuidos: Incluyen varios niveles de servidores. Cambio continuo de topología.
2.5 - Diagramas de Implementación: Componentes Ejercicio práctico Modelar el diagrama de despliegue de un  servidor en producción en cluster  que corre bajo el  servidor de Aplicaciones Win2003  con conexión a una base de datos con Data WareHouse: … .  Suerte!!!
2.5 – Diagramas de Implementación: Despliegue Solución
2.5 - Diagramas de Implementación: Componentes Ejercicio práctico Diagrama de despliegue de una Aplicación Web Cliente-Servidor: Cliente: Browser convencional Servidor: Web tier: Web Server Business tier: JavaBeans + Controles ActiveX Comunicación:  tcp/ip … .  Suerte!!!
2.5 – Diagramas de Implementación: Despliegue Solución
Conclusiones Identificar el uso adecuado de los diagramas de implementación Elementos UML de los diagramas de Componentes Diferencia entre componente y despliegue Elementos UML de un diagrama de despliegue Ejemplos. Introducción Diagramas   Casos de Uso Diagramas de Clases Diagramas de Interacción Diagramas de Comportamiento Diagramas de implementación Otros diagramas Proceso Unificado
Referencias Guia Básica.pdf Tutorial Sparx – Ampliación http://www.sparxsystems.com.ar/resources/tutorial/physical_models.html Tutorial Ingeniería del software: http://www.monografias.com/trabajos34/ingenieria-software/ingenieria-software.shtml#clases

Curso Uml 2.5 Diagramas De ImplementacióN

  • 1.
    Curso UML EmilioAvilés Ávila http://www.techmi.es
  • 2.
    Workshop (20 horas)Workshop UML y Proceso Unificad para empresas y profesionales
  • 3.
    Temario Introducción Diagramas Casos de Uso Diagramas de Clases Diagramas de Interacción Diagramas de Comportamiento Diagramas de implementación Otros diagramas Proceso Unificado
  • 4.
  • 5.
    Objetivos Introducción Diagramas Casos de Uso Diagramas de Clases Diagramas de Interacción Diagramas de Comportamiento Diagramas de implementación Otros diagramas Proceso Unificado Identificar el uso adecuado de los diagramas de implementación Elementos UML de los diagramas de Componentes Diferencia entre componente y despliegue Elementos UML de un diagrama de despliegue Ejemplos.
  • 6.
    Tema 2.5 Diagramasde implementación
  • 7.
    2.5 – Diagramasde Implementación Introducción Un diagrama de implementación muestra: Las dependencias entre las partes de código del sistema (diagrama de componentes) La estructura del sistema en ejecución (diagrama de despliegue): Los diagramas de componentes se utilizan para modelar la vista de implementación estática de un sistema. Los diagramas de despliegue se utilizan para modelar la vista de despliegue estática.
  • 8.
    Tema 2.5.a OtrosDiagramas Diagrama de componentes
  • 9.
    2.5 – Diagramasde Implementación: Componentes Términos y Conceptos Componente. Def. Unidad autónoma que forma parte del sistema y proporciona la implementaron de un conjunto de interfaces. Componentes y clases Las clases representan abstracciones lógicas y las componentes abstracciones físicas . Los componentes puede vivir en nodos y las clases NO. Las clases contienen atributos y operaciones. Los componentes sólo contienen operaciones alcanzables por sus interfaces. Componentes e interfaces El uso de interfaces para unir componentes es muy común. Un componente puede exportar o importar interfaces.
  • 10.
    2.5 – Diagramasde Implementación: Componentes Términos y Conceptos (II) Un componente es fácilmente reemplazable. Es físico reemplazable parte del sistema proporciona un conjunto de interfaces Tipos de componentes Componentes de despliegue : Necesarios para formar un sistema ejecutable. (DLLs,EXEs) Componentes de productos de trabajo : Generados del proceso de desarrollo. Componentes de ejecución : Consecuencia de la ejecución del sistema.
  • 11.
    2.5 – Diagramasde Implementación: Componentes Términos y Conceptos (III) Los componentes se pueden agrupar en paquetes Estereotipos executable library table file document
  • 12.
    2.5 – Diagramasde Implementación: Componentes Notación Los componentes se representan gráficamente como a continuación:
  • 13.
    2.5 – Diagramasde Implementación: Componentes Componentes: Elementos Requisitos Indicar sus obligaciones contractuales (servicios proveen en el modelo) Ayudan a documentar el comportamiento funcional de los elementos de software. Restricciones Indican el entorno en el que operan. Escenarios Descripciones textuales y procedimentales de las acciones de un objeto a lo largo del tiempo y describen la forma en la que un componente trabaja. Se pueden crear múltiples escenarios para describir tanto el camino básico (una ejecución perfecta) como las excepciones, errores y otras condiciones. Trazabilidad Componente puede implementar otro elemento del modelo (por ejemplo un caso de uso) Un componente puede ser implementado por otro elemento (por ejemplo un paquete de clases).
  • 14.
    2.5 – Diagramasde Implementación: Componentes Diagrama de Componentes Se utilizan para modelar la vista (lógica) de implementación estática de un sistema: para modelar código fuente para modelar versiones ejecutables para modelar bases de datos físicas para modelar sistemas adaptables Es un tipo especial de diagrama de clases que se centra en los componentes de un sistema. Formado por: Componentes. Dependencia de Interfaces. Comunicaciones. relaciones de dependencia, generalización, asociación y realización.
  • 15.
    2.5 – Diagramasde Implementación: Componentes Diagrama de Componentes Interfaces: Pueden exponer interfaces Son puntos visibles de entrada o los servicios que un componente ofrece
  • 16.
    2.5 – Diagramasde Implementación: Componentes Ejemplo Diagrama Componentes
  • 17.
    2.5 – Diagramasde Implementación: Componentes Estereotipos en Componentes Executable : Especifica un componente que se puede ejecutar en un nodo. Library : Especifica una biblioteca de objetos estática o dinámica. Table : Especifica un componente que representa una tabla de una base de datos. File : Especifica un componente que representa un documento que contiene código fuente o datos. Document : Especifica un componente que representa un documento.
  • 18.
    2.5 – Diagramasde Implementación: Componentes Consideraciones y usos Muestran la organización y dependencias lógica entre componentes. Se deben tener en consideración requisitos: Facilidad de desarrollo. Gestión del Software. Reutilización. Restricciones impuestas por los lenguajes de programación. Herramientas usadas para el desarrollo.
  • 19.
    2.5 – Diagramasde Implementación: Componentes Componentes en Despliegue En los diagramas de despliegue pueden mostrarse las asociaciones existentes entre los nodos y los componentes .
  • 20.
    2.5 – Diagramasde Implementación: Componentes Componentes y Nodos Un diagrama de despliegue muestra el despliegue físico del sistema en un ambiente de producción (o de prueba). Muestra dónde se ubican los componentes, en qué servidores, máquinas o hardware. Puede representar los enlaces de redes, el ancho de banda de la LAN,
  • 21.
    2.5 - Diagramasde Implementación: Componentes Ejercicio práctico Modelar el diagrama de componentes para proveer una vista conceptual/lógica de la construcción de un sistema: Servidor Seguridad de tienda de libros online Servidor Web Firewall Paginas ASP …. Suerte!!!
  • 22.
    2.5 – Diagramasde Implementación: Componentes Solución
  • 23.
    2.5 - Diagramasde Implementación: Componentes Ejercicio práctico Modelar el diagrama de componentes para un software de seguridad con los siguientes elementos: Autoridad certificadora (Certificate Authority) Navegador (Browser) Servidor Web Otros elementos (Firewall, etc..) … . Suerte!!!
  • 24.
    2.5 – Diagramasde Implementación: Componentes Solución
  • 25.
    Tema 2.5.b Diagramasde implementación Diagrama de DESPLIEGUE
  • 26.
    2.5 – Diagramasde Implementación: Despliegue Introducción Representa la arquitectura de ejecución de los sistemas . Muestra artefactos del sistema como nodos , los cuales son conectados mediante caminos de comunicación para crear redes de complejidad arbitraria. Los nodos son definidos de forma anidada, representando tanto dispositivos hardware como entornos de ejecución software . También conocido como modelo físico.
  • 27.
    2.5 – Diagramasde Implementación: Despliegue Nodos Un nodo representa un tipo de recurso computacional sobre el que se pueden desplegar artefactos para su ejecución. Dos posibles estereotipos: Dispositivos hardware : como un ordenador, un procesador, un teléfono móvil, etc. Entornos de ejecución : sistemas software que albergan o contienen el software desarrollado, como sistemas operativos, servidores y clientes Web, etc. Un nodo puede, a su vez, albergar otros nodos, en una estructura anidada.
  • 28.
    2.5 – Diagramasde Implementación: Despliegue Nodos: Notación
  • 29.
    2.5 – Diagramasde Implementación: Despliegue Relaciones entre nodos Las asociaciones entre nodos permiten modelar: Un canal de comunicación existente entre nodos y el tipo. La cardinalidad de la relación.
  • 30.
    2.5 – Diagramasde Implementación: Despliegue Artefactos Representan la especificación de un elemento de implementación concreto y real: generalmente archivos (ejecutables, de datos, de configuración, HTML, documentos, resultados del proceso de desarrollo, …). tablas de la base de datos. Los artefactos se ‘despliegan’ en los nodos, indicando que recurso computacional los va a albergar y, en su caso, ejecutar.
  • 31.
    2.5 – Diagramasde Implementación: Despliegue Diagramas de despliegue Muestra las relaciones físicas entre los componentes hardware y software en el sistema final así como su configuración. Formados por instancias de componentes software que representan manifestaciones de código en tiempo de ejecución . Representación : grafo de nodos unidos por conexiones de comunicación ‘ Diagramas de clases que se ocupan de modelar los nodos del sistema’
  • 32.
    2.5 – Diagramasde Implementación: Despliegue Diagrama de despliegue: Usos Aunque UML no es un lenguaje para especificar hardware, permite modelar muchos de estos aspectos. Suficiente para que: Un ingeniero software especifique la plataforma de ejecución del software Un ingeniero sistemas maneje la frontera entre el software y hardware.
  • 33.
    2.5 – Diagramasde Implementación: Despliegue Diagrama de despliegue: Usos Sistemas empotrados : Colección de hardware con gran cantidad de software que controla los dispositivos. Sistemas cliente-servidor: Conectividad de red de los clientes sobre los servidores y distribución física de nodos Sistemas distribuidos: Incluyen varios niveles de servidores. Cambio continuo de topología.
  • 34.
    2.5 - Diagramasde Implementación: Componentes Ejercicio práctico Modelar el diagrama de despliegue de un servidor en producción en cluster que corre bajo el servidor de Aplicaciones Win2003 con conexión a una base de datos con Data WareHouse: … . Suerte!!!
  • 35.
    2.5 – Diagramasde Implementación: Despliegue Solución
  • 36.
    2.5 - Diagramasde Implementación: Componentes Ejercicio práctico Diagrama de despliegue de una Aplicación Web Cliente-Servidor: Cliente: Browser convencional Servidor: Web tier: Web Server Business tier: JavaBeans + Controles ActiveX Comunicación: tcp/ip … . Suerte!!!
  • 37.
    2.5 – Diagramasde Implementación: Despliegue Solución
  • 38.
    Conclusiones Identificar eluso adecuado de los diagramas de implementación Elementos UML de los diagramas de Componentes Diferencia entre componente y despliegue Elementos UML de un diagrama de despliegue Ejemplos. Introducción Diagramas Casos de Uso Diagramas de Clases Diagramas de Interacción Diagramas de Comportamiento Diagramas de implementación Otros diagramas Proceso Unificado
  • 39.
    Referencias Guia Básica.pdfTutorial Sparx – Ampliación http://www.sparxsystems.com.ar/resources/tutorial/physical_models.html Tutorial Ingeniería del software: http://www.monografias.com/trabajos34/ingenieria-software/ingenieria-software.shtml#clases