1.-ESTRUCTURA
Diagrama de clases
Un diagrama de clases es un tipo de diagrama estático que describe la
estructura de un sistema mostrando sus clases, orientados a objetos.
Definiciones
- Propiedad de objetos que tienen propiedades y/u operaciones que contienen un contexto y un dominio, los primeros dos ejemplos son clases de datos y el tercero clase de lógica de negocio, dependiendo de quién diseñe el sistema se pueden unir los datos con las operaciones.
- El diagrama de clases incluye mucha más información como la relación entre un objeto y otro, la herencia de propiedades de otro objeto, conjuntos de operaciones/propiedades que son implementadas para una interfaz gráfica.
- Presenta las clases del sistema con sus relaciones estructurales y de herencia.
- El diagrama de clases es la base para elaborar una arquitectura MVC o MVP.
Diagrama de objetos
"Un diagrama
de objetos es un gráfico de instancias, incluyendo objetos y datos. Un diagrama
de objetos es una instancia de un diagrama de clases; muestra una 'foto' del
estado de un sistema en un punto de tiempo determinado."
Los diagramas
de objeto están ligados a los diagramas de clase y comparten virtualmente los
mismos símbolos para la notación. Los diagramas de objetos pertenecen a la
categoría de diagramas estructurales en UML.
Los diagramas de objetos se generan en las
disciplinas de Arquitectura y diseño. Se utilizan para mostrar estructuras de
datos y las interacciones que existen entre objetos en tiempo de ejecución.
Diagrama de
componentes
Un diagrama
de componentes es un diagrama tipo del Lenguaje Unificado
de Modelado.
Un diagrama de
componentes representa cómo un sistema de software es dividido en componentes y muestra las dependencias entre estos componentes. Los
componentes físicos incluyen archivos, cabeceras, bibliotecas compartidas, módulos, ejecutables, o paquetes. Los diagramas de Componentes prevalecen en el campo de la arquitectura de software pero pueden ser usados para modelar y
documentar cualquier arquitectura de sistema.
Debido a que los
diagramas de componentes son más parecidos a los diagramas de casos de usos,
éstos son utilizados para modelar la vista estática y dinámica de un sistema.
Muestra la organización y las dependencias entre un conjunto de componentes. No
es necesario que un diagrama incluya todos los componentes del sistema,
normalmente se realizan por partes. Cada diagrama describe un apartado del
sistema.
En él se situarán
librerías, tablas, archivos, ejecutables y documentos que formen parte del
sistema.
Uno de los usos principales es que puede servir
para ver qué componentes pueden compartirse entre sistemas o entre diferentes
partes de un sistema.
Diagrama de estructura
compuesta
Un diagrama de estructura es un tipo que muestra la estructura interna de una clase y las colaboraciones que esta estructura hace posibles. Una estructura compuesta es un conjunto de elementos interconectados que colaboran
en tiempo de ejecución para lograr algún propósito. Cada elemento tiene algún rol definido en la colaboración.
Las entidades
de estructura compuesta claves identificadas en la especificación UML 2.0 son:
clasificadores estructurados, partes, puertas, conectores, y colaboraciones.
Parte
Una parte representa un rol jugado en tiempo de
ejecución por una instancia de una clase o por una colección de instancias. La parte puede nombrar solamente un
rol, una superclase abstracta, o puede nombrar una clase
concreta específica.
Puerta
Una puerta es un punto de interacción que puede
ser usado para conectar clasificadores estructurados con sus partes y con el
ambiente. Las puertas pueden opcionalmente especificar los servicios que
proveen y los servicios que requieren de otras partes del sistema.
Las puertas
pueden ya sea delegar los requerimientos recibidos a partes internas, o pueden
entregarlos directamente para el comportamiento del clasificador estructurado
en el que la puerta está contenido. Las puertas públicas que son visibles en el
ambiente son mostradas sobre el borde (límite o frontera), mientras que las
puertas protegidas que no son visibles en el ambiente son mostradas dentro de
la frontera (borde o límite).
Conector
Un conector
une dos o más entidades, permitiéndoles interactuar en tiempo de ejecución. Un
conector es representado por una línea que une una combinación de partes,
puertas y clasificadores estructurados. El diagrama muestra tres conectores entre
puertas, y un conector entre un clasificador estructurado y una parte.
Colaboración
Una colaboración es generalmente más abstracta que un
clasificador estructurado. Ésta es mostrada como un óvalo sin relleno
conteniendo los roles que las instancias pueden jugar en la colaboración.
Clasificador estructurado.
Un Clasificador Estructurado representa una clase, frecuentemente una clase abstracta,
cuyo comportamiento puede ser completa o parcialmente descrito mediante
interacciones entre partes.
Diagrama de paquetes
En el Lenguaje Unificado
de Modelado, un diagrama
de paquetes muestra cómo un sistema está dividido en agrupaciones
lógicas mostrando las dependencias entre esas agrupaciones.
Dado que
normalmente un paquete está pensado como un directorio, los diagramas de
paquetes suministran una descomposición de la jerarquía lógica de un sistema.
Los Paquetes están
normalmente organizados para maximizar la coherencia interna dentro de cada
paquete y minimizar el acoplamiento externo entre los paquetes. Con estas
líneas maestras sobre la mesa, los paquetes son buenos elementos de gestión.
Cada paquete puede asignarse a un individuo o a un equipo, y las dependencias
entre ellos pueden indicar el orden de desarrollo requerido.
Diagrama de
despliegue
El Diagrama de Despliegue es un tipo de diagrama que se utiliza para modelar la
disposición física de los artefactos software en nodos (usualmente plataforma
de hardware)
Usos
Algunos de los usos
que se les da a los diagramas de despliegue son para modelar:
* Sistemas
empotrados: Un sistema empotrado es una colección
de hardware con una gran cantidad de software que interactúa con el mundo
físico.
* Sistemas
cliente-servidor: Los sistemas cliente-servidor son un
extremo del espectro de los sistemas distribuidos y requieren tomar decisiones
sobre la conectividad de red de los clientes a los servidores y sobre la
distribución física de los componentes software del sistema a través de nodos.
* Sistemas completamente distribuidos: En
el otro extremo encontramos aquellos sistemas que son ampliamente o totalmente
distribuidos y que normalmente incluyen varios niveles de servidores. Tales
sistemas contienen a menudo varias versiones de componentes software, alguno de
los cuales pueden incluso migrar de un nodo a otro. El diseño de tales sistemas
requiere tomar decisiones que permitan un cambio continuo de la topología del sistema.