Component diagrams show the structure of the software system, which describes the software components, their interfaces, and their dependencies. You can use component diagrams to model software systems at a high level or to show components at a lower package level.
This type of diagram supports component-based development in which a software system is divided into components and interfaces that are reusable and replaceable.
The following topics describe model elements in component diagrams:
Components
In UML modeling, components are model elements that represent independent, interchangeable parts of a system. They conform to and realize one or more provided and required interfaces, which determine the behavior of components.Subsystems
In UML models, subsystems are a type of stereotyped component that represent independent, behavioral units in a system. Subsystems are used in class, component, and use case diagrams to represent large-scale components in the system that you are modeling.Component instances
In UML modeling, component instances are model elements that represent actual entities in a system.Packages
Packages group related model elements of all types, including other packages.Artifacts
In UML models, artifacts are model elements that represent the physical entities in a software system. Artifacts represent physical implementation units, such as executable files, libraries, software components, documents, and databases.
Related tasks
Modeling the component and services view of an application
Specifying relationships in modeling diagrams
Adding interfaces to modeling diagrams