lunes, 21 de abril de 2014

UML Capítulo 4: Conceptos Básicos III

¡Hola de nuevo internauta!,

      En esta nueva entrada vamos a ver aquellos el resto de diagramas que nos quedan, a saber: Diagrama de despliegue y diagrama de paquetes, así como una breve introducción de los perfiles. Como he comentado en las entradas anteriores se verán más en profundidad en futuros artículos ya que estos primeros son de introducción a UML. ¡y sin más preámbulos, al meollo!.

Aviso a navegantes: Los diagramas expuestos como ejemplos no son los usados en la notación correcta de UML (estos los veremos en sucesivas entradas) pero los uso igualmente porque reflejan de una manera gráfica la explicación dada.




  • Diagrama de despliegue: Este tipo de diagrama representa el despliegue de artefactos, que son unidades físicas como pueden ser archivos, sobre nodos, que son recursos de tiempo de ejecución como un ordenador o una memoria. Esto nos permite valorar la  distribución y asignación de los recursos del sistema.

  • Hay dos niveles en este tipo de diagrama:

    • Nivel de descriptor: Muestra los tipos de nodos que hay en el sistema y los artefactos que contienen. Los nodos se representan por un cubo y los artefactos por un rectángulo. 


    • ¿Y esto qué nos dice?. Decir, lo que es decir tal cual, nada, ya que es un gráfico y no puede hablar ;), peeero, si representa algo de lo que podemos extrapolar la siguiente información: El sistema ofrece al usuario tres artefactos ( los archivos de extensión .c) para que este pueda interactuar con el, estas interfaces a su vez se comunican con otros artefactos (los archivos .jar) que a su vez se comunican con la base de datos. ¿Y los nodos?, ¿donde están los nodos?. Aaaay impacientes, fijaros bien en el gráfico, ¿véis esos cubos?, esos en cuyo interior están los artefactos. Pues esos son los nodos, y lo que representan es que los artefactos (ficheros .c o .jar y la base de datos) se encuentran en un recurso en tiempo de ejecución (en este caso servidores). 
    Imagen comica
    Tranquilícese Don Bigotes que ahora vamos con eso...

      Esos gráficos son las notaciones para representar interfaces y lo que nos indica es que los artefactos a los que hace referencia se ofrecen de esa manera a los usuarios para que puedan interactuar con el sistema.

    • Nivel de instancia: Muestra los nodos individuales y sus enlaces. Su información es consistente con lo mostrado a nivel de descriptor. 

    • Como podemos ver es fácil relacionar este tipo de diagrama con el anterior pero es más sencillo ya que sólo indica los nodos a usar y no los artefactos que estos contienen.

    ¿Cuando usar un nivel u otro?. Desde mi punto de vista ambos diagramas van de la mano pero presentaremos unos u otros en función de la cantidad de información que queramos aportar. Funcionalmente podemos usar sólo el nivel de instancia para dar una información abstracta o funcional sin entrar en el detalle de la implementación de cada artefacto, mientras que el nivel de descriptor está muy bien para una información más detallada para otros equipos (si los hay), como por ejemplo, uno específico que se encargue del despliegue de la aplicación en los servidores de producción.
  • Diagrama de paquetes: Modela la organización del sistema en agrupaciones lógicas mostrando las dependencias entre las mismas, aunque hay que tener en cuenta que dicho modelado puede darse desde puntos de vista diferentes, como por ejemplo, de diseño o de análisis (o de ambos). Generalmente suelen contener los diagramas de clase y los casos de uso sobre los que hablamos aquí. Pero no están limitados solamente a este tipo de elementos UML.

  • ¿Y para qué se usa este tipo de diagramas?. Para tareas de gestión de proyecto ya que muestra la coherencia interna del sistema y permite tratar cada paquete de manera independiente, pudiendo asignárselos a equipos de desarrollo distintos y sus dependencias nos dicen el orden en el que deben ser desarrollados o implementados (las entregas del desarrollo pueden no coincidir, que es lo normal, pero a la hora de implementarlo ha de cumplirse dicho orden por problemas de dependencias entre paquetes).
    A continuación presentamos un diagrama de paquetes que representa la venta de entradas de un teatro. En el podemos observar las dependencias entre los distintos paquetes (indicadas por las flechas discontinuas) y cómo debe ser el orden en el desarrollo de dichos paquetes.
Perfiles

Los perfiles permiten a los usuarios de UML hacer cambios limitados sin modificar el metamodelo pudiendo adaptarlo a dominios o plataformas específicas. Para ello UML incluye tres constructores principales de extensibilidad:

  • Restricción: Declaración de texto de una relación semántica.
  • Estereotipo: Nuevo tipo de elemento del modelo concebido por la persona que realiza el modelo.
  • Valor etiquetado: Es una pieza de información con nombre vinculada a cualquier elemento del modelo. Lo que viene siendo un comentario de toda la vida donde se amplía la información.
Hay que tener en cuenta que también se permiten definir iconos para un determinado nombre de estereotipo como ayuda visual. Mejor vamos a ver esto con un ejemplo para que quede más claro.


Y hasta aquí la entrada de hoy. Espero que os haya gustado y servido para tener una idea muy básica del UML. Todos estos conceptos los desarrollaremos en posteriores entradas de una manera más amplia.

¡Gracias por leerme!

No hay comentarios:

Publicar un comentario