Component (UML)

A component ( engl. Component) is a model element in the Unified Modeling Language ( UML), a modeling language for software and other systems.

Description

Components are modular parts of a system which are structured so that they may be in their environment is replaced by another functionally equivalent component. In software development, the analogous concept of software component. Modeled to component-based systems with the UML2, then is the model element component of such a completed module.

Component is a specialization of class, and they may therefore have structural features such as attributes or operations, participate in generalizations and be informed of associations with other components in relationship.

However, these properties of a component confront another feature something in the background. It is particularly important that a component as a module forecloses an internal structure to the outside and it offers against outside a shell with well-defined docking sites. As a consequence arise depending on your view, two views of a component, a black-box view showing only the edge, and a white-box view showing the internal structure.

The docking of a component consists of a set of interfaces provided and required, and possibly a set of ports.

A similar component is drawn as a class as a rectangle with a name. The keyword «component » and an optional icon in the upper right corner of the notation of a component differ from that of a class.

Black- box view of a component

The black-box view of a component shows the edge of the component and the interfaces offered or they must refer from other components of the component to the outside. Pie chart to show all the possibilities for the notation used by interfaces (see interface). The example on the right shows offered interfaces as Lollipops and needed a socket. It could also be shown in the form of classifier, and a dependency relationship between the interface and the component.

The example on the right further uses two ports for the specification of components shells. One of these, management port, is named.

White- box view of a component

The white-box view of a component shows the internal structure of the component. In the example on the right this structure consists of three sub-components of Memory message, the frontend and user management.

That the inside of a component, in turn, can be modeled simply as a component is not mandatory. It is the responsibility of the modeler to find suitable modeling elements for a specific model. Candidates are next to the component about the Part or an encapsulated classifier. And classes, interfaces, subsystems, or may be used as needed. Subsystems are components that are identified by the keyword «subsystem ».

Composition of components

Components are characterized above all by the fact that several components can be to a larger system may once again a component joined together so that they can thus compose in this sense. The UML2 models a composition as a dependency relationship between the offered interface of a component and a need to interface the other. The graphical notation has this dependency relationship is not always explicit. In the example on the right the Email Management component is connected to the components Inbox or mail output by the matching lollipop and socket interfaces are merged. An explicit dependency relationship is shown between the monitor and the user interface operation.

Differences to the UML 1.4

The concept of a component as a model element was already known in UML 1.4. It has undergone changes both in the meta model and in the notation of UML2. In UML2 a component is a specialization of Classifier. You can therefore have all kinds of structural features. The notation has been simplified in that a component well as many other model elements can also be represented as a rectangle, without the two usual from the UML 1.4 additional small rectangles on the edge thereof.

483532
de