Experimentation in software engineering: an introduction
Experimentation in software engineering: an introduction
Implementing distribution and persistence aspects with aspectJ
OOPSLA '02 Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
A Metrics Suite for Object Oriented Design
IEEE Transactions on Software Engineering
Arranging language features for more robust pattern-based crosscuts
Proceedings of the 2nd international conference on Aspect-oriented software development
IEEE Transactions on Software Engineering
Aspect-oriented programming and modular reasoning
Proceedings of the 27th international conference on Software engineering
Check 'n' crash: combining static checking and testing
Proceedings of the 27th international conference on Software engineering
Information hiding interfaces for aspect-oriented design
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
Using Pointcut Delta Analysis to Support Evolution of Aspect-Oriented Software
ICSM '05 Proceedings of the 21st IEEE International Conference on Software Maintenance
Empirical Validation of Object-Oriented Metrics on Open Source Software for Fault Prediction
IEEE Transactions on Software Engineering
Modular Software Design with Crosscutting Interfaces
IEEE Software
A framework and tool supports for generating test inputs of AspectJ programs
Proceedings of the 5th international conference on Aspect-oriented software development
Easy language extension with meta-aspectJ
Proceedings of the 28th international conference on Software engineering
The paradoxical success of aspect-oriented programming
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Exceptions and aspects: the devil is in the details
Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering
A Candidate Fault Model for AspectJ Pointcuts
ISSRE '06 Proceedings of the 17th International Symposium on Software Reliability Engineering
Bridging Java and AspectJ through explicit join points
Proceedings of the 5th international symposium on Principles and practice of programming in Java
On Identifying Bug Patterns in Aspect-Oriented Programs
COMPSAC '07 Proceedings of the 31st Annual International Computer Software and Applications Conference - Volume 01
A Case Study Implementing Features Using AspectJ
SPLC '07 Proceedings of the 11th International Software Product Line Conference
EJFlow: taming exceptional control flows in aspect-oriented programming
Proceedings of the 7th international conference on Aspect-oriented software development
Evolving software product lines with aspects: an empirical study on design stability
Proceedings of the 30th international conference on Software engineering
Mutation Testing for Aspect-Oriented Programs
ICST '08 Proceedings of the 2008 International Conference on Software Testing, Verification, and Validation
Do Crosscutting Concerns Cause Defects?
IEEE Transactions on Software Engineering
Automated Generation of Pointcut Mutants for Testing Pointcuts in AspectJ Programs
ISSRE '08 Proceedings of the 2008 19th International Symposium on Software Reliability Engineering
Automated test data generation for aspect-oriented programs
Proceedings of the 8th ACM international conference on Aspect-oriented software development
A Test-Driven Approach to Developing Pointcut Descriptors in AspectJ
ICST '09 Proceedings of the 2009 International Conference on Software Testing Verification and Validation
On the impact of aspectual decompositions on design stability: an empirical study
ECOOP'07 Proceedings of the 21st European conference on Object-Oriented Programming
Automating the mutation testing of aspect-oriented Java programs
Proceedings of the 5th Workshop on Automation of Software Test
An empirical evaluation of coupling metrics on aspect-oriented programs
Proceedings of the 2010 ICSE Workshop on Emerging Trends in Software Metrics
Components meet aspects: Assessing design stability of a software product line
Information and Software Technology
A pointcut-based coverage analysis approach for aspect-oriented programs
Information Sciences: an International Journal
On the relationship of concern metrics and requirements maintainability
Information and Software Technology
A fine-grained debugger for aspect-oriented programming
Proceedings of the 11th annual international conference on Aspect-oriented Software Development
An exploratory study of the design impact of language features for aspect-oriented interfaces
Proceedings of the 11th annual international conference on Aspect-oriented Software Development
Comprehensively evaluating conformance error rates of applying aspect state machines
Proceedings of the 11th annual international conference on Aspect-oriented Software Development
Crosscutting revision control system
Proceedings of the 34th International Conference on Software Engineering
On the role of composition code properties on evolving programs
Proceedings of the ACM-IEEE international symposium on Empirical software engineering and measurement
The crosscutting impact of the AOSD Brazilian research community
Journal of Systems and Software
Enhancing design models with composition properties: a software maintenance study
Proceedings of the 12th annual international conference on Aspect-oriented software development
The potential of omniscient debugging for aspect-oriented programming languages
Proceedings of the 1st workshop on Comprehension of complex systems
Toward automated refactoring of crosscutting concerns into aspects
Journal of Systems and Software
A fine-grained, customizable debugger for aspect-oriented programming
Transactions on Aspect-Oriented Software Development X
Language features for software evolution and aspect-oriented interfaces: an exploratory study
Transactions on Aspect-Oriented Software Development X
Hi-index | 0.00 |
This paper presents the results of an exploratory study on the fault-proneness of aspect-oriented programs. We analysed the faults collected from three evolving aspect-oriented systems, all from different application domains. The analysis develops from two different angles. Firstly, we measured the impact of the obliviousness property on the fault-proneness of the evaluated systems. The results show that 40% of reported faults were due to the lack of awareness among base code and aspects. The second analysis regarded the fault-proneness of the main aspect-oriented programming (AOP) mechanisms, namely pointcuts, advices and intertype declarations. The results indicate that these mechanisms present similar fault-proneness when we consider both the overall system and concern-specific implementations. Our findings are reinforced by means of statistical tests. In general, this result contradicts the common intuition stating that the use of pointcut languages is the main source of faults in AOP.