The temporal logic of reactive and concurrent systems
The temporal logic of reactive and concurrent systems
On characterization of safety and liveness properties in temporal logic
Proceedings of the fourth annual ACM symposium on Principles of distributed computing
Enforcing trace properties by program transformation
Proceedings of the 27th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A study on exception detection and handling using aspect-oriented programming
Proceedings of the 22nd international conference on Software engineering
Communications of the ACM
Using aspectC to improve the modularity of path-specific customization in operating system code
Proceedings of the 8th European software engineering conference held jointly with 9th ACM SIGSOFT international symposium on Foundations of software engineering
POPL '83 Proceedings of the 10th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Verifying aspect advice modularly
Proceedings of the 12th ACM SIGSOFT twelfth international symposium on Foundations of software engineering
A classification system and analysis for aspect-oriented programs
Proceedings of the 12th ACM SIGSOFT twelfth international symposium on Foundations of software engineering
Conference record of the 33rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
GPCE '07 Proceedings of the 6th international conference on Generative programming and component engineering
MAVEN: modular aspect verification
TACAS'07 Proceedings of the 13th international conference on Tools and algorithms for the construction and analysis of systems
Aspect categories and classes of temporal properties
Transactions on Aspect-Oriented Software Development I
Certificate translation for specification-preserving advices
Proceedings of the 7th workshop on Foundations of aspect-oriented languages
FM '08 Proceedings of the 15th international symposium on Formal Methods
Modular verification of strongly invasive aspects: summary
Proceedings of the 2009 workshop on Foundations of aspect-oriented languages
Modular Verification of Strongly Invasive Aspects
Languages: From Formal to Natural
Dataflow analysis for properties of aspect systems
HVC'09 Proceedings of the 5th international Haifa verification conference on Hardware and software: verification and testing
Science of Computer Programming
Usage and testability of AOP: An empirical study of AspectJ
Information and Software Technology
Aspect interaction chart - a UML approach for modularizing aspect interaction conflicts
Proceedings of the 28th Annual ACM Symposium on Applied Computing
Behavioral refinement of non-deterministic state transition diagrams based on behavior elimination
Proceedings of the 17th International Software Product Line Conference co-located workshops
Hi-index | 0.00 |
Aspect Oriented Programming can arbitrarily distort the semantics of programs. In particular, weaving can invalidate crucial safety and liveness propertiesof the base program. In this article, we identify categories of aspects that preserve some classes of properties. It is then sufficient to check that an aspect belongs to a specific category to know which properties will remain satisfied by woven programs. Our categories of aspects, inspired by Katz's, comprise observers, aborters and confiners. Observers introduce new instructions and a new local state but they do not modify the base program's state and control-flow. Aborters are observers which may also abort executions. Confiners only ensure that executions remain in the reachable states of the base program. These categories (along with three other) are defined precisely based on a language independent abstract semantics framework. The classes of properties are defined as subsets of LTL for deterministic programs and CTL* for non-deterministic ones. We can formally prove that, for any program, the weaving of any aspect in a category preserves any property in the related class. We give examples to illustrate each category and prove the preservation of one class of properties by one category of aspects in the appendix.