23.4.  Component

A component type represents a distributable piece of implementation of a system, including software code (source, binary, or executable) but also including business documents, etc., in a human system. Components may be used to show dependencies, such as compiler and run-time dependencies or information dependencies in a human organization. In the UML metamodel it is a sub-class of Classifier.

A component is represented on a class diagram as a box with two small rectangles protruding from its left side, labeled with its name.

23.4.1.  Component Details Tabs

The details tabs that are active for components are as follows.

ToDoItem

Standard tab.

Properties

See Section 23.4.2, “ Component Property Toolbar and Section 23.4.3, “ Property Fields For Component below.

Documentation

Standard tab.

Presentation

Standard tab. The Bounds: field defines the bounding box for the component on the diagram.

Source

Standard tab, but with no contents.

[Caution]Caution

A component should not generate any code, so having this tab active is probably a mistake.

Tagged Values

Standard tab.

[Note]Note

The UML Element metaclass from which all other model elements are derived includes the tagged element documentation which is handled by the documentation tab under ArgoUML

23.4.2.  Component Property Toolbar

Go up

Navigate up through the package structure.

New reception

This creates a new reception, navigating immediately to the properties tab for that reception.

New Stereotype

This creates a new Stereotype (see Section 16.6, “ Stereotype) for the selected component, navigating immediately to the properties tab for that stereotype.

Delete

This deletes the component from the model

[Warning]Warning

This is a deletion from the model not just the diagram. To delete a component from the diagram, but keep it within the model, use the main menu Remove From Diagram (or press the Delete key).

23.4.3.  Property Fields For Component

Name

Text box. The name of the component. The name of a component has a leading capital letter, with words separated by “bumpy caps”.

[Note]Note

ArgoUML does not enforce this naming convention.

Stereotype

Drop down selector. Component is provided by default with the UML standard stereotypes document, executable, file, library and table. ArgoUML also provides the standard Classifier stereotypes, metaclass, powertype, process, thread and utility.

Navigate Stereotype

icon. If a stereotype has been selected, this will navigate to the stereotype property panel (see Section 16.6, “ Stereotype).

Namespace

Drop down selector. Records and allows altering the namespace for the component. This is the package hierarchy.

Modifiers

Check box, with entries abstract, leaf and root.

  • Abstract is used to declare that this component cannot be instantiated, but must always be specialized.

  • Leaf indicates that this component cannot be further specialized.

  • Root indicates the node can have no generalization.

Generalizations

Text box. Lists any component that generalizes this component.

Specializations

Text area. Lists any derived components, i.e those for which this component is a generalization.

Client Dependencies

Text area. Lists outgoing dependencies. Button 1 double click navigates to the dependency.

Supplier Dependencies

Text area. Lists incoming dependencies. Button 1 double click navigates to the dependency.

Residents

Text box. Lists any residents (see Section 23.4, “ Component) designed to be deployed on this type of node.

Button 1 double click navigates to the selected entry.