Concepts and tools for describing, configuring and validating software systems. The approach is based on a platform and technology independent architecture model and supports local and distributed component-based and service-oriented software architectures. Tools that are based on the model are used for visualising, configurating and validating software systems. The approach will be evaluated using specific component technologies like EJB, OSGi, and Web Services. The approach is also intended to be used as a basis for supporting Aspect-Oriented Programming (AOP) and Feature-Oriented Programming (FOP) on an architecture level.