En modélisation UML, les composants sont des éléments de modèle qui représentent les parties indépendantes et interchangeables d'un système. Ils sont conformes à une ou plusieurs interfaces fournies et obligatoires qu'il réalisent, ce qui détermine leur comportement.
Les composants rendent les systèmes plus souples, évolutifs et réutilisables.
Dans les modèles décrivant des systèmes exécutables, les composants sont ceux utilisés pendant l'exécution du système. Exemples : objets COM+, JavaBeans et services Web.
En règle générale, un composant prend le nom de la partie du système qu'il représente.
Comme illustré dans la figure ci-dessous, un composant est représenté dans l'éditeur de diagrammes par un rectangle contenant le nom du composant. Il contient également un stéréotype «component» ou une icône de composant, qui est une case avec deux petits rectangles qui en sortent par le côté.
Les compartiments sont utilisés pour afficher des informations sur les attributs, les opérations, les interfaces fournies, les interfaces obligatoires, les réalisations et la structure interne du composant.