Software Architectures and Component Technology