Un componente es una parte física de un sistema (modulo, base de datos, programa ejecutable, etc.). Se puede decir que un componente es la materialización de una o más clases, porque una abstracción con atributos y métodos pueden ser implementados en los componentes.
Respecto a los componentes…
Ø Es implementado por una o más clases/objetos del sistema.
Ø Es una unidad autónoma que provee una o más interfaces.
Ø Las interfaces representan un contrato de servicios que el componente ofrece.
Los componentes pueden ser:
Ø Archivos
Ø Código fuente + Cabeceras
Ø Librerías compartidas (DLLs)
Ø Ejecutables
Ø Paquetes
Muestra como el sistema está dividido en componentes y las dependencias entre ellos.
· Proveen una vista arquitectónica de alto nivel del sistema.
· Ayuda a los desarrolladores a visualizar el camino de la implementación.
· Permite tomar decisiones respecto a las tareas de implementación y los Skills requeridos.
En un DC, un componente se representa con un rectángulo en el que se escribe su nombre y en él se muestran dos pequeños rectángulos al lado izquierdo. O también los siguientes:
Representación simple de un Componente
Elementos del Diagrama de Componentes
Normalmente los diagramas de Componentes contienen:
• Componentes
• Interfaces
• Relaciones de dependencia, generalización, asociación y realización
• Paquetes o subsistemas
Los componentes se pueden agrupar en paquetes así como los objetos en clases, además pueden haber entre ellos relaciones de dependencia como:
• Generalización
• Asociación

• Agregación
• Realización
Estereotipos de componentes
UML define cinco estereotipos estándar que se aplican en los componentes
Ø Executable, componente que se puede ejecutar
Ø Library, biblioteca de objetos estática o dinámica
Ø Table, Componentes que representa una tabla de base de datos
Ø File, componente que representa un documento que contiene código fuente o datos.
Ø Document, Comp. Que representa un documento.
¿Por qué utilizar un Diagrama de Componentes?
Ø Nos permite ver el modelado de un sistema o subsistema.
Ø Permite especificar un componente con interfaces bien definidas.

No hay comentarios:
Publicar un comentario