||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.