Component Diagram
Purpose
The top-level Package Diagram in each OO model includes four packages: one for each of the views in the model. Two of these packages, called components and processes may be decomposed through one or more further levels of PD to a set of CPDs.
Example
Description
In the Component View, the Component Diagrams (CPDs) show the dependencies between compilation units, typically including source files, and the runtime components of the final system. In the Process View, the CPDs show the dependencies between processes (scheduleable units that may be selected for execution on the host machine's processor) in terms of runtime components. Runtime components typically include:
- Executables
- Dynamically linked libraries (DLLs)
- Overlays
- Shell scripts or batch files
These diagrams are intended to show the allocation of classes to compilation units and processes, respectively, although UML does not define how this is to occur. Cradle will support this mapping by providing a frame called CLASSES in which the names of the classes contained within the component or task can be listed.
By being defined by Process Specifications (PSpecs), components and tasks will be cross referenceable.
Characteristics
APPEARS IN MODELS |
Implementation |
NUMBERING |
CPDs take their name and number from the package from which they are an expansion. They contain components and tasks, each of which is defined by a PSpec. |
HIERARCHICAL |
No |
Linkage
Symbols
| Symbol |
Name |
Description |
Definition |
Expansion |
|
Comment |
Makes a note anywhere in the diagram. Are always surrounded by * characters. |
None |
None |
|
Component specification |
A software component, which may or may not be executable. |
PSpec |
None |
|
Task specification |
An executable component, typically known as a process, a thread, or a task. |
PSpec |
None |
|
Picture |
Allows you to choose the location of a GIF or JPEG image to be displayed as a diagram symbol or to be embedded in an existing diagram symbol. |
None |
None |
|
Component dependency |
A dependency between components. |
None |
None |
|