Composition Analysis of Multiple Aspects in Aspect-oriented Programs

被引:1
作者
Qamar, Nafees [1 ]
机构
[1] INRIA Rhone Alpes LIG, Grenoble, France
来源
APSEC 09: SIXTEENTH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE, PROCEEDINGS | 2009年
关键词
Programming languages; Aspect-oriented programming; aspects interactions and interferences; formal methods;
D O I
10.1109/APSEC.2009.36
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
This paper presents a classification of widely studied approaches that focus interaction analysis and composition of multiple aspect(s) in aspect-oriented programs (AOP). It is evident that AOP has an ability to distort semantics of base-programs and aspects themselves due to advice-method or advice-advice interactions in terms of control now and data sharing features. Thus, it entails a comprehensive analysis in order to pinpoint ambiguities at semantic level; especially in case of multiple aspects that remains focus of this paper. One possible interaction (method-advice) may inviolate a predicate of another advice from another aspect, residing in the base-program. We narrow our analysis to understand such intricacies and present a bunch of rules to understand weaving semantics (in particular, advice-advice interaction from two different aspects) and also propose precedence laws for aspects to be woven. In this paper discrete computation of aspects using operational semantics enables better interaction analysis of aspects and specifying their behavior by excluding the dependencies of any specific AOP language implementation. The contributions are threefold: (1) a survey based on an informal classification of proposed approaches targeted towards interfering aspects (2) our proposed formal definitions for composing aspects through evaluation rules using operational semantics (3) addressing precedence issues in aspects to some degree and offering a preliminary solution based on proactive execution order of aspects.
引用
收藏
页码:223 / 230
页数:8
相关论文
共 50 条
[41]   Flexible and efficient profiling with aspect-oriented programming [J].
Binder, Walter ;
Ansaloni, Danilo ;
Villazon, Alex ;
Moret, Philippe .
CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2011, 23 (15) :1749-1773
[42]   Aspect-Oriented Refactoring of Legacy Applications: An Evaluation [J].
Mortensen, Michael ;
Ghosh, Sudipto ;
Bieman, James M. .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2012, 38 (01) :118-140
[43]   On Aspect-Oriented Programming in Adaptive User Interfaces [J].
Sebek, Jiri ;
Trnka, Michal ;
Cerny, Tomas .
2015 2ND INTERNATIONAL CONFERENCE ON INFORMATION SCIENCE AND SECURITY (ICISS), 2015, :147-151
[44]   Performance Evaluation of Aspect-Oriented Programming Weavers [J].
Soares, Michel S. ;
Maia, Marcelo A. ;
Silva, Rodrigo F. G. .
ENTERPRISE INFORMATION SYSTEMS, ICEIS 2014, 2015, 227 :187-203
[45]   Model for Dynamic Evolution of Aspect-Oriented Software [J].
Katic, Marija ;
Fertalj, Kresimir .
2011 15TH EUROPEAN CONFERENCE ON SOFTWARE MAINTENANCE AND REENGINEERING (CSMR), 2011, :377-380
[46]   Semantic based aspect-oriented programming for context-aware Web service composition [J].
Li, Li ;
Liu, Dongxi ;
Bouguettaya, Athman .
INFORMATION SYSTEMS, 2011, 36 (03) :551-564
[47]   Avoiding code pitfalls in Aspect-Oriented Programming [J].
Santos, Adriano ;
Alves, Pericles ;
Figueiredo, Eduardo ;
Ferrari, Fabian .
SCIENCE OF COMPUTER PROGRAMMING, 2016, 119 :31-50
[48]   A design rule language for aspect-oriented programming [J].
Neto, Alberto Costa ;
Bonifacio, Rodrigo ;
Ribeiro, Marcio ;
Pontual, Carlos Eduardo ;
Borba, Paulo ;
Castor, Fernando .
JOURNAL OF SYSTEMS AND SOFTWARE, 2013, 86 (09) :2333-2356
[49]   JastAdd - an aspect-oriented compiler construction system [J].
Hedin, G ;
Magnusson, E .
SCIENCE OF COMPUTER PROGRAMMING, 2003, 47 (01) :37-58
[50]   A Unique Aspect-Oriented Program Slicing Technique [J].
Singh, Jagannath ;
Mohapatra, Durga Prasad .
2013 INTERNATIONAL CONFERENCE ON ADVANCES IN COMPUTING, COMMUNICATIONS AND INFORMATICS (ICACCI), 2013, :159-164