This document presents the application of our method to discover stable domain abstractions for designing reusable pointcut interfaces in a car crash management system, a.k.a. the "common case study for aspect-oriented modeling". It provides a detailed account of how we applied this method in this particular case study. More specifically, it presents and discusses the seven activities of the method.
The requirements engineering activities (1 to 4) start from use cases and domain models. These activities involve re-engineering the use case models in order to discover and define stable abstractions for the car crash management domain. The software architecture activities (5 to 7) illustrate the introduction of pointcut interfaces in an aspect-oriented architecture and the composition of aspects to base modules through these pointcut interfaces. This results in a AO architecture with highly reusable pointcut interfaces, as they are based on stable domain abstractions.