Los diagramas de componentes describen la descomposición físicos de los elementos de un sistema (modulo, base de datos, programa ejecutable, etc.) y sus relaciones. Muestran las opciones de realización incluyendo código fuente, binario y ejecutable, pueden ser simples archivos, paquetes, bibliotecas cargadas dinámicamente, etc.
Representación grafica:
Elementos
› Normalmente los DC contienen los siguientes elementos:
› Componentes
› Interfaces
› Relaciones de dependencia, generalización, asociación y realización.
› Paquetes o subsistemas.
Relaciones de dependencia de los DC.
› Se pueden agrupar en paquetes así como los objetos de clases, además pueden tener entre ellos relaciones, tales como:
› Generalización
› Asociación
› Agregación
› Realización
Dependencia
Estereotipos de los componentes.
UML define cinco estereotipos estándar que se aplican a los 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.
Dependencias entre componentes.
Se utilizan en los DC para indicar que un componente se refiere a los servicios ofrecidos por otro componente.
Subsistemas:
• Los distintos componentes pueden agruparse en paquetes según un criterio lógico y con vistas a simplificar la implementación.
• Son paquetes estereotipados en <<subsistemas>>.
Funcionalidad de los subsistemas.
• Los subsistemas organizan la vista de realización de un sistema.
• Cada subsistema puede contener componentes y otros subsistemas.
• La descomposición en subsistemas no es necesariamente una descomposición funcional.
• La relación entre paquetes y clases en el nivel lógico es el que existe entre subsistemas y componentes en el nivel físico.
• Paquetes (Categorias) y clases en el nivel lógico. Paquetes (Subsistemas) y componentes en el nivel físico.
Interfaces.
• Es el lazo de unión entre varios componentes.
• Las interfaces pueden representarse de varias formas, como vemos en la grafica:
Pasos para elaborar un diagrama de componentes:
- Previamente al diagrama de componentes debemos de tener hecho el diagrama de clases.
- Se debe identificar a todos las clases que participaran en el sistema o subsistema a desarrollar.
- Una vez identificado las clases, se procede a identificar sus métodos.
- Estos métodos pasaran a ser módulos con líneas de código independientes.
- Estos módulos serán los componentes de nuestro diagrama.
- Estos componentes se relacionan entre si por medio de sus interfaces