Composing crosscutting concerns using composition filters
Communications of the ACM
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
Data-Flow-Based Unit Testing of Aspect-Oriented Programs
COMPSAC '03 Proceedings of the 27th Annual International Conference on Computer Software and Applications
Journal of Systems and Software
Hi-index | 0.00 |
Aspect-Oriented Programming (AOP) is an emerging paradigm that enhances the modularity of Object-Oriented Programming (OOP) by eliminating tangling and scattering in the code. The scattering code is encapsulated within a module called an Aspect. A join point is an execution point in a program. When there is more than one aspect sharing the same join point then it becomes necessary to identify the faults that occur during their composition. A Fault model is instrumental in identifying the faults that can occur in any software system. Research works so far have focused on the composition of Aspects only from the implementation standpoint. It is necessary to identify these faults during the design process, early in the software development lifecycle. This would help in adopting better coding strategies that result in modular, reusable and maintainable code. Towards this objective, this paper proposes a candidate fault model that identifies the faults which occur during Aspect Composition from the design. Use-case scenarios and sequence diagrams are used to reflect the design of the system. The proposed fault model identifies the faults from the sequence diagrams. Test cases are generated from the design using black-box testing strategy. The proposed fault model is also applied to an illustrative case study and has been validated using test case coverage analysis.