|Principles of component-based software construction like decomposition,
decoupling, late binding and late composition are mainstream concepts found in many
software systems, technologies and domains. The definition of individual components
and component properties is well supported on the level of programming languages.
However, tool support for component-based software architectures is insufficient. In
particular, component-level abstractions are not integrated well enough with lower-level
architectural elements, architectural views are not editable or missing, and validation of
component-based system configurations is not provided. In addition, existing approaches
only support a specific component technology and lack support for heterogeneous
systems. We present a toolkit supporting the design, analysis and implementation of
component-based software systems independent of concrete component models and
technologies. The foundation of the toolkit is an architecture description metamodel that
unifies concepts of existing component models and that scales from component-based
applications to distributed service-oriented architectures. In this paper we focus on the
concepts provided for modeling and visualizing different structural relationship of
component-based system architectures.