Mapping High-Level Business Rules To and Through Aspects

RESUME. ABSTRACT.Many object-oriented software applications contain implicit business rules. Although there exist many approaches that advocate the separation of rules, the rules'connections still crosscut the core application functionality, which impedes reuse, either anticipated or not. Moreover, ultimately business rules are implemented in a programming language, which de- creases understandability and accessibility by domain experts. We propose a high-level domain model for representing domain concepts, business rules about these concepts, and connections of business rules to the core application in terms of these concepts. The link to the implementa- tion is invisible to domain experts and encapsulated in amapping. The novelty and contribution of our approach is the use of Aspect-Oriented Programming (AOP) on two levels. First of all, elements from the high-level domain model are mappedto existing implementation entities of an application developed in Object-Oriented Programming (OOP) or AOP. Secondly, new im- plementation entities are generated in order to map domain model elements that do not have a direct realisation in the current implementation or that appear as a result of domain evolu- tion. As the new implementation entities can result in crosscutting, the mapping occurs through AOP. We evaluate our approach in theWeb Services Management Layer (WSML), a non-trivial application for creating applications using Web Services, by means of two scenarios: (1) ex- tracting implicit business rules from the WSML and representing them in a high-level domain model, and (2) extending the WSML with unanticipated business rules. MOTS-CLES :