Download PDF (external access)

Discovery of stable abstractions for aspect-oriented composition in the car crash management domain

Publication date: 2010-01-01
Volume: 6210 Pages: 375 - 422
ISSN: 3642160859, 978-3-642-16085-1
Publisher: Springer

Author:

Van Landuyt, Dimitri
Truyen, Eddy ; Joosen, Wouter ; Katz, S ; Mezini, M ; Kienzle, J

Keywords:

aspect-oriented composition, car crash management, pointcut interface, stable abstractions, Science & Technology, Technology, Computer Science, Software Engineering, Computer Science, Theory & Methods, Computer Science, SOFTWARE, DESIGN, CODE

Abstract:

In this paper, we illustrate our method for the discovery of stable domain abstractions for the purpose of designing robust and reusable pointcut interfaces in the car crash management system (CCMS). A pointcut interface represents an abstraction of the join points in the base application to which aspects are composed. Although many techniques and notations to model explicit pointcut interfaces exist, there is currently a lack of methodological guidance how to design pointcut interfaces which are (i) robust in light of software evolution and (ii) can be reused by multiple aspects. Based on use case engineering and domain modeling techniques, our method provides a systematic approach for discovering domain abstractions that are suitable for aspectual composition. Furthermore, it provides architectural guidelines how to design pointcut interfaces that are based on these stable domain abstractions. The underlying principle of our method is that the composition between aspect and base modules will be more robust and more reusable when specified in terms of stable domain abstractions, instead of low-level implementation details. In this paper, we provide concrete evidence from the CCMS of how our method can be adopted to realize the above-mentioned goals. Specifically, we illustrate how ripple effects from the base application to the aspects are avoided, and how this contributes to pointcut interface stability. Secondly, we show how duplication is avoided in the specification of the pointcut interfaces, and how this leads to effective reuse of the pointcut interfaces by multiple aspects.