Applying Aspect-Oriented Programming Concepts to a Component-based Programming Model