COMPONENTDIAGRAM Lecture
COMPONENTDIAGRAM Lecture
DIAGRAM
INTRODUCTION
UML component diagrams describe software components
and their dependencies to each others
A component is an autonomous unit within a system
The components can be used to define software systems of
arbitrary size and complexity
UML component diagrams enable to model the high-level software
components, and the interfaces to those components
Important for component-based development (CBD)
Component and subsystems can be flexibly REUSED and
REPLACED
A dependency exists between two elements if changes to the
definition of one element may cause changes to the other
Component Diagrams are often referred to as “wiring diagrams”
The wiring of components can be represented on diagrams by
means of components and dependencies between them
INTRODUCTION
An Uml diagram classification:
Static
Use case diagram, Class diagram
Dynamic
State diagram, Activity diagram, Sequence diagram,
Collaboration diagram
Implementation
Component diagram, Deployment diagram
A component is encapsulated
Can be
Provided
Required
INTERFACE
A provided interface
Characterize services that the
component offers to its
environment
Is modeled using a ball, labelled
with the name, attached by a
solid line to the component
A required interface
Characterize services that the component expects
from its environment
Is modeled using a socket, labelled with the name,
attached by a solid line to the component
In UML 1.x were modeled using a dashed arrow
INTERFACE
Where two components/classes provide and require
the same interface, these two notations may be
combined
A component
Specifies a CONTRACT of the services that it provides
to its clients and that it requires from others
components in terms of its provided and required
interfaces
Can be replaced
Usage Dependency
A usage dependency is relationship which one
element requires another element for its full
implementation
Is a dependency in which the client requires the
presence of the supplier
Is shown as dashed arrow with a <<use>> keyword
The arrowhead point from the dependent
component to the one of which it is dependent
PORT
Specifies a distinct interaction point
Between that component and its environment