Component

Return to Introduction  Previous page  Next page

d_Component

A Component is a modular part of a system, whose behavior is defined by its provided and required interfaces; the internal workings of the Component should be invisible and its usage environment-independent. Source code files, DLLs, Java beans and other artifacts defining the system can be manifested in Components.

A Component can be composed of multiple Classes, or Components pieced together. As smaller Components come together to create bigger Components, the eventual system can be modeled, building-block style, in Component diagrams. By building the system in discrete Components, localization of data and behavior enables decreased dependency between Classes and Objects, providing a more robust and maintainable design.

Toolbox Icon

e_Component

OMG UML Specification

The OMG UML specification (UML Superstructure Specification, v2.0, p. 7) states:

"A modular part of a system that encapsulates its contents and whose manifestation is replaceable within its environment. A component defines its behavior in  terms of provided and required interfaces. As such, a component serves as a type, whose conformance is defined by these provided and required interfaces (encompassing both their static as well as dynamic semantics)."