Aspect-oriented programming, one of the most promising separation-of-concerns technologies, focuses on concerns that cross-cut a chosen decomposition strategy. Despite its promise, however, AOP has so far failed to make the transition to mainstream software development. The authors describe a strategy, based on architecture stratification, that exploits the advantages of aspect-oriented development in model-driven and component-based frameworks.